mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-08-13 09:39:10 +00:00
Compare commits
51 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
d4068eaa48 | ||
|
beceab38f8 | ||
|
6a91636e1a | ||
|
7a081330e4 | ||
|
8f6204546e | ||
|
909502dc41 | ||
|
6cde48e49f | ||
|
b0486a940d | ||
|
526fb6fa21 | ||
|
441364ff91 | ||
|
322abc44e0 | ||
|
aee85cf8b0 | ||
|
7e74941a73 | ||
|
79c02e4ae4 | ||
|
d271dd9566 | ||
|
c62e867b56 | ||
|
fab048a116 | ||
|
906a848cdb | ||
|
7d779754e6 | ||
|
1924ab4b9a | ||
|
3b7a42bbc9 | ||
|
02fc90dfbd | ||
|
3ac18d20c9 | ||
|
6289bb92af | ||
|
c32de24438 | ||
|
011de43698 | ||
|
9cb01a519b | ||
|
b604bbfb3d | ||
|
37ed615df1 | ||
|
a40ad243ca | ||
|
962dda2b8b | ||
|
7739f1951d | ||
|
17d90107a3 | ||
|
7daff778f9 | ||
|
283ab728f2 | ||
|
6bb922953d | ||
|
7e0c0b633d | ||
|
585f0ef91c | ||
|
0e692735c4 | ||
|
5df60bf2a6 | ||
|
42e569e0d1 | ||
|
278cebf202 | ||
|
51f4d6d357 | ||
|
b0a9f0e638 | ||
|
eb548884b8 | ||
|
b69d02ef4f | ||
|
bb4a82c8e1 | ||
|
8ad76d2f8d | ||
|
e572eecc73 | ||
|
f393cecbf7 | ||
|
5bc674b48d |
@@ -20,6 +20,8 @@
|
||||
|
||||
ROOT_DIR = !!ROOT_DIR!!
|
||||
GRF_DIR = $(ROOT_DIR)/media/extra_grf
|
||||
BASESET_DIR = $(ROOT_DIR)/media/baseset
|
||||
LANG_DIR = $(ROOT_DIR)/src/lang
|
||||
BIN_DIR = !!BIN_DIR!!/baseset
|
||||
OBJS_DIR = !!GRF_OBJS_DIR!!
|
||||
OS = !!OS!!
|
||||
@@ -36,6 +38,7 @@ endif
|
||||
|
||||
GRFCODEC := !!GRFCODEC!!
|
||||
NFORENUM := !!NFORENUM!!
|
||||
CC_BUILD := !!CC_BUILD!!
|
||||
MD5SUM := $(shell [ "$(OS)" = "OSX" ] && echo "md5 -r" || echo "md5sum")
|
||||
|
||||
# Some "should not be changed" settings.
|
||||
@@ -44,7 +47,7 @@ PNG_FILES := $(GRF_DIR)/*.png $(GRF_DIR)/rivers/*.png
|
||||
|
||||
# Build the GRF.
|
||||
ifdef GRFCODEC
|
||||
all: $(BIN_DIR)/openttd.grf
|
||||
all: $(BIN_DIR)/openttd.grf $(BIN_DIR)/orig_dos.obg $(BIN_DIR)/orig_dos_de.obg $(BIN_DIR)/orig_win.obg $(BIN_DIR)/orig_dos.obs $(BIN_DIR)/orig_win.obs $(BIN_DIR)/no_sound.obs $(BIN_DIR)/orig_win.obm $(BIN_DIR)/no_music.obm
|
||||
else
|
||||
all:
|
||||
endif
|
||||
@@ -53,20 +56,33 @@ endif
|
||||
$(OBJS_DIR)/sprites:
|
||||
$(Q)-mkdir "$@"
|
||||
|
||||
# Generic
|
||||
$(BIN_DIR)/openttd.grf: $(OBJS_DIR)/openttd.grf
|
||||
$(Q)cp $(OBJS_DIR)/openttd.grf $(BIN_DIR)/openttd.grf
|
||||
$(E) '$(STAGE) Updating base graphics sets'
|
||||
$(Q) for grf in $(BIN_DIR)/orig*.obg; do sed 's/^OPENTTD.GRF = [0-9a-f]*$$/OPENTTD.GRF = '`$(MD5SUM) $(BIN_DIR)/openttd.grf | sed 's@ .*@@'`'/' $$grf > $$grf.tmp && mv $$grf.tmp $$grf; done
|
||||
$(OBJS_DIR)/langfiles.tmp: $(LANG_DIR)/*.txt
|
||||
$(E) '$(STAGE) Collecting baseset translations'
|
||||
$(Q) cat $^ > $@
|
||||
|
||||
# Yeah, we'd like to use -i in the sed, but Mac OS X's sed and GNU sed just can't agree on the usage of -i. In any case either one of them fails.
|
||||
$(OBJS_DIR)/openttd.grf: $(PNG_FILES) $(NFO_FILES) $(OBJS_DIR)/sprites
|
||||
$(BIN_DIR)/%.obg: $(BASESET_DIR)/%.obg $(BIN_DIR)/openttd.grf $(OBJS_DIR)/langfiles.tmp $(BASESET_DIR)/translations.awk
|
||||
$(E) '$(STAGE) Updating $(notdir $@)'
|
||||
$(Q) sed 's/^OPENTTD.GRF = *[0-9a-f]*$$/OPENTTD.GRF = '`$(MD5SUM) $(BIN_DIR)/openttd.grf | sed 's@ .*@@'`'/' $< > $@.tmp
|
||||
$(Q) awk -v langfiles='$(OBJS_DIR)/langfiles.tmp' -f $(BASESET_DIR)/translations.awk $@.tmp >$@
|
||||
$(Q) rm $@.tmp
|
||||
|
||||
$(BIN_DIR)/%.obs: $(BASESET_DIR)/%.obs $(OBJS_DIR)/langfiles.tmp $(BASESET_DIR)/translations.awk
|
||||
$(E) '$(STAGE) Updating $(notdir $@)'
|
||||
$(Q) awk -v langfiles='$(OBJS_DIR)/langfiles.tmp' -f $(BASESET_DIR)/translations.awk $< >$@
|
||||
|
||||
$(BIN_DIR)/%.obm: $(BASESET_DIR)/%.obm $(OBJS_DIR)/langfiles.tmp $(BASESET_DIR)/translations.awk
|
||||
$(E) '$(STAGE) Updating $(notdir $@)'
|
||||
$(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
|
||||
$(E) '$(STAGE) Assembling openttd.nfo'
|
||||
$(Q)-cp $(PNG_FILES) $(OBJS_DIR)/sprites 2> /dev/null
|
||||
$(Q) gcc -I$(GRF_DIR) -C -E - < "$(GRF_DIR)/openttd.nfo" | sed -e '/^#/d' -e '/^$$/d' > $(OBJS_DIR)/sprites/openttd.nfo
|
||||
$(Q) $(CC_BUILD) -nostdinc -I$(GRF_DIR) -C -E - < "$(GRF_DIR)/openttd.nfo" | sed -e '/^#/d' -e '/^$$/d' > $(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
|
||||
$(Q)cp $(OBJS_DIR)/openttd.grf $(BIN_DIR)/openttd.grf
|
||||
|
||||
# Clean up temporary files.
|
||||
clean:
|
||||
|
@@ -154,7 +154,7 @@ mrproper:
|
||||
distclean: mrproper
|
||||
|
||||
maintainer-clean: distclean
|
||||
$(Q)rm -f $(BIN_DIR)/baseset/openttd.grf
|
||||
$(Q)rm -f $(BIN_DIR)/baseset/openttd.grf $(BIN_DIR)/baseset/*.obg $(BIN_DIR)/baseset/*.obs $(BIN_DIR)/baseset/*.obm
|
||||
|
||||
depend:
|
||||
@for dir in $(SRC_DIRS); do \
|
||||
|
@@ -276,7 +276,7 @@ endian_target.h: $(ENDIAN_CHECK) $(CONFIG_CACHE_ENDIAN)
|
||||
|
||||
$(ENDIAN_CHECK): $(SRC_DIR)/endian_check.cpp
|
||||
$(E) '$(STAGE) Compiling and Linking $@'
|
||||
$(Q)$(CXX_BUILD) $(CFLAGS_BUILD) $(CXXFLAGS_BUILD) $< -o $@
|
||||
$(Q)$(CXX_BUILD) $(CFLAGS_BUILD) $(CXXFLAGS_BUILD) $(LDFLAGS_BUILD) $< -o $@
|
||||
|
||||
# Revision files
|
||||
|
||||
|
@@ -588,7 +588,7 @@ ERROR: IsEnd() is invalid as Begin() is never called
|
||||
SetName(): false
|
||||
GetLastErrorString(): ERR_NAME_IS_NOT_UNIQUE
|
||||
GetName(): Regression
|
||||
GetPresidentName(): P. Sharkey
|
||||
GetPresidentName(): E. McAlpine
|
||||
SetPresidentName(): true
|
||||
GetPresidentName(): Regression AI
|
||||
GetBankBalance(): 100000
|
||||
@@ -5079,7 +5079,7 @@ ERROR: IsEnd() is invalid as Begin() is never called
|
||||
GetPlaneType(): -1
|
||||
Engine 211
|
||||
IsValidEngine(): true
|
||||
GetName(): Yate Cargo ship
|
||||
GetName(): Yate Cargo Ship
|
||||
GetCargoType(): 5
|
||||
CanRefitCargo(): true
|
||||
GetCapacity(): 160
|
||||
|
@@ -10,22 +10,30 @@ fallback = true
|
||||
description = A music pack without actual music.
|
||||
description.af_ZA = 'n Musiek stel sonder enige musiek.
|
||||
description.ar_EG = مجموعة موسيقى بدون موسيقى
|
||||
description.be_BY = "Пусты" набор музычнага афармлення, не змяшчаючы ніякай музыкі.
|
||||
description.bg_BG = Празен музикален пакет.
|
||||
description.ca_ES = Un joc de música sense cap música.
|
||||
description.cs_CZ = Prázná hudební sada.
|
||||
description.da_DA = En musikpakke uden musik.
|
||||
description.cy_GB = Pecyn cerddoriaeth heb unrhyw gerddoriaeth ynddo.
|
||||
description.da_DK = En musikpakke uden musik.
|
||||
description.de_DE = Ein Musikset ohne Musik.
|
||||
description.el_GR = Ένα πάκετο μουσικής χωρίς πραγματική μουσική.
|
||||
description.en_GB = A music pack without actual music.
|
||||
description.en_AU = A music pack without actual music.
|
||||
description.en_US = A music pack without actual music.
|
||||
description.es_ES = Un conjunto de música vacío.
|
||||
description.et_ET = Muusikakomplekt ilma igasuguse muusikata.
|
||||
description.et_EE = Muusikakomplekt ilma igasuguse muusikata.
|
||||
description.fi_FI = Musiikkipaketti, jossa ei ole musiikkia.
|
||||
description.fr_FR = Un pack de musiques sans musiques.
|
||||
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.
|
||||
description.hu_HU = Zenei alapcsomag zene nélkül.
|
||||
description.id_ID = Paket musik tanpa berisi musik.
|
||||
description.id_ID = Paket musik tanpa musik sungguhan.
|
||||
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.lt_LT = Muzikos pakas be muzikos.
|
||||
description.nb_NO = En musikkpakke uten noe musikk.
|
||||
description.nl_NL = Een muziekset zonder muziek.
|
||||
description.nn_NO = Ei musikkpakke utan noko musikk.
|
||||
@@ -34,10 +42,14 @@ description.pt_PT = Um conjunto de música vazio.
|
||||
description.ro_RO = Un set de muzică fără muzică inclusă.
|
||||
description.ru_RU = "Пустой" набор музыкального оформления, не содержащий никакой музыки.
|
||||
description.sk_SK = Sada hudby neobsahujúca hudbu.
|
||||
description.sl_SL = Glasbeni paket z vključeno glasbo.
|
||||
description.sl_SI = Glasbeni paket z vključeno glasbo.
|
||||
description.sr_RS = Prazan skup muzičkih numera.
|
||||
description.sv_SE = Ett musikpaket utan någon musik.
|
||||
description.ta_IN = இசை இல்லாத இசைத்தொகுப்பு.
|
||||
description.th_TH = A music pack without actual music.
|
||||
description.tr_TR = Müzik içermeyen boş bir müzik paketi.
|
||||
description.vi_VN = Gói âm nhạc này không có nhạc nào.
|
||||
description.zh_CN = 一个没有实际内容的音乐包.
|
||||
description.zh_TW = 不含任何音樂的音樂集。
|
||||
|
||||
[files]
|
||||
|
@@ -10,22 +10,30 @@ fallback = true
|
||||
description = A sound pack without any sounds.
|
||||
description.af_ZA = 'n Klank stel sonder enige klanke.
|
||||
description.ar_EG = مجموعة صوت بدوت اصوات مضافة
|
||||
description.be_BY = "Пусты" набор гукавога афармленьня, не змяшчаючы ніякіх гукаў.
|
||||
description.bg_BG = Празен звуков пакет.
|
||||
description.ca_ES = Un joc de sons sense cap so.
|
||||
description.cs_CZ = Prázdná sada zvuků.
|
||||
description.da_DA = En lydpakke uden lyde.
|
||||
description.cy_GB = Pecyn sain heb unrhyw effeithiau sain ynddo.
|
||||
description.da_DK = En lydpakke uden lyde.
|
||||
description.de_DE = Basissounds ohne Sound.
|
||||
description.el_GR = Ένα πάκετο ήχων χώρις ήχους.
|
||||
description.en_GB = A sound pack without any sounds.
|
||||
description.en_AU = A sound pack without any sounds.
|
||||
description.en_US = A sound pack without any sounds.
|
||||
description.es_ES = Un conjunto de sonidos vacío.
|
||||
description.et_ET = Ilma häälteta helipakk.
|
||||
description.fi_FI = Äänipaketti ilman ääniä.
|
||||
description.et_EE = Ilma häälteta helipakk.
|
||||
description.fi_FI = Äänipaketti, jossa ei ole ääniä.
|
||||
description.fr_FR = Un pack de sons sans sons.
|
||||
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.
|
||||
description.hu_HU = Hang alapcsomag hangok nélkül.
|
||||
description.id_ID = Paket efek suara tanpa berisi suara.
|
||||
description.id_ID = Paket efek suara tanpa suara apapun.
|
||||
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.lt_LT = Garsų pakas be jokių garsų.
|
||||
description.nb_NO = En lydpakke uten noen lyder.
|
||||
description.nl_NL = Een geluidset zonder geluid.
|
||||
description.nn_NO = Ei lydpakke utan nokon lydar.
|
||||
@@ -34,10 +42,14 @@ description.pt_PT = Um conjunto de sons vazio.
|
||||
description.ro_RO = Un set de sunete fără nici un sunet inclus.
|
||||
description.ru_RU = "Пустой" набор звукового оформления, не содержащий никаких звуков.
|
||||
description.sk_SK = Zvuková sada neobsahujúca zvuky.
|
||||
description.sl_SL = Zvočni paket brez zvoka.
|
||||
description.sl_SI = Zvočni paket brez zvoka.
|
||||
description.sr_RS = Prazan skup zvukova.
|
||||
description.sv_SE = Ett ljudpaket utan några ljud.
|
||||
description.ta_IN = ஒலிகள் இல்லாத ஒலி தொகுப்பு.
|
||||
description.th_TH = A sound pack without any sounds.
|
||||
description.tr_TR = Ses içermeyen boş bir ses kümesi.
|
||||
description.vi_VN = Gói âm thanh này không có âm thanh nào.
|
||||
description.zh_CN = 一个空的音效包.
|
||||
description.zh_TW = 不含任何音效的音效集。
|
||||
|
||||
[files]
|
||||
|
Binary file not shown.
@@ -11,22 +11,30 @@ palette = DOS
|
||||
description = Original Transport Tycoon Deluxe DOS edition graphics.
|
||||
description.af_ZA = Oorspronklike Transport Tycoon Deluxe DOS uitgawe grafieke.
|
||||
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الرسومية نسخة الدوس
|
||||
description.be_BY = Арыгінальная графіка з Transport Tycoon Deluxe для DOS.
|
||||
description.bg_BG = Оригинални графики на Transport Tycoon Deluxe за DOS.
|
||||
description.ca_ES = Gràfics originals de Transport Tycoon Deluxe per a DOS.
|
||||
description.cs_CZ = Původní sada grafik Transport Tycoon Deluxe (verze pro DOS).
|
||||
description.da_DA = Originalgrafik fra Transport Tycoon Deluxe DOS-version.
|
||||
description.cy_GB = Graffeg gwreiddiol fersiwn DOS o Transport Tycoon Deluxe.
|
||||
description.da_DK = Originalgrafik fra Transport Tycoon Deluxe DOS-version.
|
||||
description.de_DE = Original Transport Tycoon Deluxe DOS Basisgrafiken.
|
||||
description.el_GR = Αρχικά γραφικά από το Transport Tycoon Deluxe έκδοση DOS.
|
||||
description.en_GB = Original Transport Tycoon Deluxe DOS edition graphics.
|
||||
description.en_AU = Original Transport Tycoon Deluxe DOS edition graphics.
|
||||
description.en_US = Original Transport Tycoon Deluxe DOS edition graphics.
|
||||
description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión DOS.
|
||||
description.et_ET = Algse Transport Tycoon Deluxe DOSi versiooni graafika.
|
||||
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe DOS grafiikat.
|
||||
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.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.
|
||||
description.hu_HU = Az eredeti Transport Tycoon Deluxe DOS verziójának grafikája.
|
||||
description.id_ID = Grafik orisinil Transport Tycoon Deluxe versi DOS.
|
||||
description.is_IS = Upprunalega grafíkin úr Transport Tycoon Deluxe DOS útgáfunni.
|
||||
description.it_IT = Grafica originale di Transport Tycoon Deluxe, edizione DOS.
|
||||
description.ja_JP = Transport Tycoon Deluxe オリジナル版 グラフィック (DOS)
|
||||
description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 도스 에디션의 그래픽입니다.
|
||||
description.lt_LT = Originali Transport Tycoon Deluxe DOS leidimo grafika.
|
||||
description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for DOS.
|
||||
description.nl_NL = Originele graphics van de Transport Tycoon Deluxe DOS-versie.
|
||||
description.nn_NO = Original grafikk frå Transport Tycoon Deluxe for DOS.
|
||||
@@ -35,10 +43,14 @@ description.pt_PT = Gráficos originais da edição DOS de Transport Tycoon Delu
|
||||
description.ro_RO = Setul grafic original al Transport Tycoon Deluxe pentru DOS.
|
||||
description.ru_RU = Оригинальная графика из Transport Tycoon Deluxe для DOS.
|
||||
description.sk_SK = Pôvodná grafika Transport Tycoon Deluxe (DOS).
|
||||
description.sl_SL = Originalna grafika Transport Tycoon Deluxe za različico DOS.
|
||||
description.sl_SI = Originalna grafika Transport Tycoon Deluxe za različico DOS.
|
||||
description.sr_RS = Originalni skup grafika Transport Tycoon Deluxe DOS izdanja.
|
||||
description.sv_SE = Originalgrafiken från Transport Tycoon Deluxe, DOS-utgåvan.
|
||||
description.ta_IN = அசல் டிரான்ஸ்ஃபோர்ட் டைகூன் டீலக்ஸ் DOS பதிப்பு அசைவூட்டங்கள்.
|
||||
description.th_TH = กราฟฟิกต้นตำหรับของ Transport Tycoon Deluxe DOS edition
|
||||
description.tr_TR = Orijinal Transport Tycoon Deluxe DOS sürümü grafikleri.
|
||||
description.vi_VN = Đồ họa gốc từ phiên bản Transport Tycoon Deluxe trên DOS
|
||||
description.zh_CN = 运输大亨DOS豪华版原版图形包.
|
||||
description.zh_TW = 原版 Transport Tycoon Deluxe DOS 版的圖形。
|
||||
|
||||
[files]
|
||||
|
@@ -10,22 +10,30 @@ version = 0
|
||||
description = Original Transport Tycoon Deluxe DOS edition sounds.
|
||||
description.af_ZA = Oorspronklike Transport Tycoon Deluxe DOS uitgawe klanke.
|
||||
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الصوتية نسخة الدوس
|
||||
description.be_BY = Арыгінальны набор гукавога афармленьня з гульні Transport Tycoon Deluxe для DOS.
|
||||
description.bg_BG = Оригинални звуци на Transport Tycoon Deluxe за DOS.
|
||||
description.ca_ES = Sons originals de Transport Tycoon Deluxe per a DOS.
|
||||
description.cs_CZ = Původní sada zvuků Transport Tycoon Deluxe (verze pro DOS).
|
||||
description.da_DA = Originallyd fra Transport Tycoon Deluxe DOS-version.
|
||||
description.cy_GB = Effeithiau sain gwreiddiol fersiwn DOS o Transport Tycoon Deluxe.
|
||||
description.da_DK = Originallyd fra Transport Tycoon Deluxe DOS-version.
|
||||
description.de_DE = Original Transport Tycoon Deluxe DOS Basissounds.
|
||||
description.el_GR = Αρχικοί ήχοι από το Transport Tycoon Deluxe έκδοση DOS.
|
||||
description.en_GB = Original Transport Tycoon Deluxe DOS edition sounds.
|
||||
description.en_AU = Original Transport Tycoon Deluxe DOS edition sounds.
|
||||
description.en_US = Original Transport Tycoon Deluxe DOS edition sounds.
|
||||
description.es_ES = Sonidos originales de Transport Tycoon Deluxe versión DOS.
|
||||
description.et_ET = Algse Transport Tycoon Deluxe DOSi versiooni helid.
|
||||
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe DOS äänet.
|
||||
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.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.
|
||||
description.hu_HU = Az eredeti Transport Tycoon Deluxe DOS verziójának hangjai.
|
||||
description.fr_FR = Sons originaux de Transport Tycoon Deluxe (version DOS).
|
||||
description.id_ID = Efek suara orisinil Transport Tycoon Deluxe versi DOS.
|
||||
description.is_IS = Upprunalega hljóðið úr Transport Tycoon Deluxe DOS útgáfunni.
|
||||
description.it_IT = Suoni originali di Transport Tycoon Deluxe, edizione DOS.
|
||||
description.ja_JP = Transport Tycoon Deluxe オリジナル版 効果音 (DOS)
|
||||
description.ko_KR = 오리지널 트랜스포트 타이쿤 도스 에디션의 효과음입니다.
|
||||
description.lt_LT = Originalūs Transport Tycoon Deluxe DOS leidimo garsai.
|
||||
description.nb_NO = Originale lyder fra Transport Tycoon Deluxe for DOS.
|
||||
description.nl_NL = Originele geluiden van de Transport Tycoon Deluxe DOS-versie.
|
||||
description.nn_NO = Originale lydar frå Transport Tycoon Deluxe for DOS.
|
||||
@@ -34,10 +42,14 @@ description.pt_PT = Sons originais da edição DOS de Transport Tycoon Deluxe.
|
||||
description.ro_RO = Setul de sunete original al Transport Tycoon Deluxe pentru DOS.
|
||||
description.ru_RU = Оригинальный набор звукового оформления из игры Transport Tycoon Deluxe для DOS.
|
||||
description.sk_SK = Pôvodné zvuky Transport Tycoon Deluxe (DOS).
|
||||
description.sl_SL = Originalni zvoki Transport Tycoon Deluxe različice DOS.
|
||||
description.sl_SI = Originalni zvoki Transport Tycoon Deluxe različice DOS.
|
||||
description.sr_RS = Originalni skup zvukova Transport Tycoon Deluxe DOS izdanja.
|
||||
description.sv_SE = Originalljuden från Transport Tycoon Deluxe, DOS-utgåvan.
|
||||
description.ta_IN = அசல் டிரான்ஸ்ஃபோர்ட் டைகூன் டீலக்ஸ் DOS பதிப்பு ஒலிகள்.
|
||||
description.th_TH = เสียงต้นตำหรับของ Transport Tycoon Deluxe DOS edition
|
||||
description.tr_TR = Orijinal Transport Tycoon Deluxe DOS sürümü sesleri.
|
||||
description.vi_VN = Âm thanh gốc từ phiên bản Transport Tycoon Deluxe trên DOS
|
||||
description.zh_CN = 运输大亨DOS豪华版原版音效包.
|
||||
description.zh_TW = 原版 Transport Tycoon Deluxe DOS 版的音效。
|
||||
|
||||
[files]
|
||||
|
@@ -11,22 +11,30 @@ palette = DOS
|
||||
description = Original Transport Tycoon Deluxe DOS (German) edition graphics.
|
||||
description.af_ZA = Oorspronklike Transport Tycoon Deluxe DOS (German) uitgawe grafieke.
|
||||
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الالمانية نسخة الدوس
|
||||
description.be_BY = Арыгінальная графіка з нямецкай версіі Transport Tycoon Deluxe для DOS.
|
||||
description.bg_BG = Оригинални графики на Transport Tycoon Deluxe за DOS (немски) .
|
||||
description.ca_ES = Gràfics originals de Transport Tycoon Deluxe per a DOS (Alemany).
|
||||
description.cs_CZ = Původní sada grafik Transport Tycoon Deluxe (německá verze pro DOS).
|
||||
description.da_DA = Originalgrafik fra Transport Tycoon Deluxe DOS (Tysk) version.
|
||||
description.cy_GB = Graffeg gwreiddiol fersiwn DOS (Almaenig) o Transport Tycoon Deluxe.
|
||||
description.da_DK = Originalgrafik fra Transport Tycoon Deluxe DOS (Tysk) version.
|
||||
description.de_DE = Original Transport Tycoon Deluxe DOS (Deutsch) Basisgrafiken.
|
||||
description.el_GR = Αρχικά γραφικά από το Transport Tycoon Deluxe έκδοση DOS (Γερμανικό).
|
||||
description.en_GB = Original Transport Tycoon Deluxe DOS (German) edition graphics.
|
||||
description.en_AU = Original Transport Tycoon Deluxe DOS (German) edition graphics.
|
||||
description.en_US = Original Transport Tycoon Deluxe DOS (German) edition graphics.
|
||||
description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión DOS (Alemán).
|
||||
description.et_ET = Algse Transport Tycoon Deluxe DOSi (Saksa) versiooni graafika.
|
||||
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe DOS (Saksalainen) grafiikat.
|
||||
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.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.
|
||||
description.hu_HU = Az eredeti Transport Tycoon Deluxe DOS (német) verziójának grafikája.
|
||||
description.id_ID = Grafik orisinil Transport Tycoon Deluxe versi DOS (Jerman).
|
||||
description.is_IS = Upprunalega grafíkin úr Transport Tycoon Deluxe DOS (þýsku) útgáfunni.
|
||||
description.it_IT = Grafica originale di Transport Tycoon Deluxe (tedesco), edizione DOS.
|
||||
description.ja_JP = Transport Tycoon Deluxe オリジナル版 グラフィック (DOS・ドイツ版)
|
||||
description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 도스 에디션(독일)의 그래픽입니다.
|
||||
description.lt_LT = Originali Transport Tycoon Deluxe DOS (Vokiečių) leidimo grafika.
|
||||
description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for DOS (tysk).
|
||||
description.nl_NL = Originele graphics van de Duitse Transport Tycoon Deluxe DOS-versie.
|
||||
description.nn_NO = Original grafikk frå Transport Tycoon Deluxe for DOS (tysk).
|
||||
@@ -35,10 +43,14 @@ description.pt_PT = Gráficos originais da edição DOS (Alemã) de Transport Ty
|
||||
description.ro_RO = Setul grafic original al Transport Tycoon Deluxe pentru DOS (ediţia germană).
|
||||
description.ru_RU = Оригинальная графика из немецкой версии Transport Tycoon Deluxe для DOS.
|
||||
description.sk_SK = Pôvodná grafika Transport Tycoon Deluxe (DOS) (v jazyku nemčina).
|
||||
description.sl_SL = Originalna grafika Transport Tycoon Deluxe za nemško različico DOS.
|
||||
description.sl_SI = Originalna grafika Transport Tycoon Deluxe za nemško različico DOS.
|
||||
description.sr_RS = Originalni skup grafika nemačkog Transport Tycoon Deluxe DOS izdanja.
|
||||
description.sv_SE = Originalgrafiken från Transport Tycoon Deluxe, DOS-utgåvan (tyska).
|
||||
description.ta_IN = அசல் டிரான்ஸ்ஃபோர்ட் டைகூன் டீலக்ஸ் DOS (செருமன்) பதிப்பு அசைவூட்டங்கள்.
|
||||
description.th_TH = กราฟฟิกต้นตำหรับของ Transport Tycoon Deluxe DOS (German) edition
|
||||
description.tr_TR = Orijinal Transport Tycoon Deluxe DOS (Almanca) sürümü grafikleri.
|
||||
description.vi_VN = Đồ họa gốc từ phiên bản Transport Tycoon Deluxe trên DOS (tiếng Đức)
|
||||
description.zh_CN = 运输大亨DOS豪华德语版原版图形包.
|
||||
description.zh_TW = 原版 Transport Tycoon Deluxe DOS 版 (德國版) 的圖形。
|
||||
|
||||
[files]
|
||||
|
@@ -11,22 +11,30 @@ palette = Windows
|
||||
description = Original Transport Tycoon Deluxe Windows edition graphics.
|
||||
description.af_ZA = Oorspronklike Transport Tycoon Deluxe Windows uitgawe grafieke.
|
||||
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الرسومية نسخة وندوز
|
||||
description.be_BY = Арыгінальная графіка з Transport Tycoon Deluxe для Windows.
|
||||
description.bg_BG = Оригинални графики на Transport Tycoon Deluxe за Windows.
|
||||
description.ca_ES = Gràfics originals de Transport Tycoon Deluxe per a Windows.
|
||||
description.cs_CZ = Původní sada grafik Transport Tycoon Deluxe (verze pro Windows).
|
||||
description.da_DA = Originalgrafik fra Transport Tycoon Deluxe Windows-version.
|
||||
description.cy_GB = Graffeg gwreiddiol fersiwn Windows o Transport Tycoon Deluxe.
|
||||
description.da_DK = Originalgrafik fra Transport Tycoon Deluxe Windows-version.
|
||||
description.de_DE = Original Transport Tycoon Deluxe Windows Basisgrafiken.
|
||||
description.el_GR = Αρχικά γραφικά από το Transport Tycoon Deluxe έκδοση Windows.
|
||||
description.en_GB = Original Transport Tycoon Deluxe Windows edition graphics.
|
||||
description.en_AU = Original Transport Tycoon Deluxe Windows edition graphics.
|
||||
description.en_US = Original Transport Tycoon Deluxe Windows edition graphics.
|
||||
description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión Windows.
|
||||
description.et_ET = Algse Transport Tycoon Deluxe Windowsi versiooni graafika.
|
||||
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe Windows grafiikat.
|
||||
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.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.
|
||||
description.hu_HU = Az eredeti Transport Tycoon Deluxe Windows verziójának grafikája.
|
||||
description.id_ID = Grafik orisinil Transport Tycoon Deluxe versi Windows.
|
||||
description.is_IS = Upprunalega grafíkin úr Transport Tycoon Deluxe Windows útgáfunni.
|
||||
description.it_IT = Grafica originale di Transport Tycoon Deluxe, edizione Windows.
|
||||
description.ja_JP = Transport Tycoon Deluxe オリジナル版 グラフィック (Windows)
|
||||
description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 윈도우 에디션의 그래픽입니다.
|
||||
description.lt_LT = Originali Transport Tycoon Deluxe Windows leidimo grafika.
|
||||
description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for Windows.
|
||||
description.nl_NL = Originele graphics van de Transport Tycoon Deluxe Windows-versie.
|
||||
description.nn_NO = Original grafikk frå Transport Tycoon Deluxe for Windows.
|
||||
@@ -35,10 +43,14 @@ description.pt_PT = Gráficos originais da edição Windows de Transport Tycoon
|
||||
description.ro_RO = Setul grafic original al Transport Tycoon Deluxe pentru Windows.
|
||||
description.ru_RU = Оригинальная графика из Transport Tycoon Deluxe для Windows.
|
||||
description.sk_SK = Pôvodná grafika Transport Tycoon Deluxe (Windows).
|
||||
description.sl_SL = Originalna grafika Transport Tycoon Deluxe za različico oken(windows).
|
||||
description.sl_SI = Originalna grafika Transport Tycoon Deluxe za različico oken(windows).
|
||||
description.sr_RS = Originalni skup grafika Transport Tycoon Deluxe Windows izdanja.
|
||||
description.sv_SE = Originalgrafiken från Transport Tycoon Deluxe, Windows-utgåvan.
|
||||
description.ta_IN = அசல் டிரான்ஸ்ஃபோர்ட் டைகூன் டீலக்ஸ் விண்டோஸ் பதிப்பு அசைவூட்டங்கள்.
|
||||
description.th_TH = กราฟฟิกต้ำตำหรับของ Transport Tycoon Deluxe Windows edition
|
||||
description.tr_TR = Orijinal Transport Tycoon Deluxe Windows sürümü grafikleri.
|
||||
description.vi_VN = Đồ họa gốc từ phiên bản Transport Tycoon Deluxe trên Windows
|
||||
description.zh_CN = 运输大亨Windows豪华版原版图形包.
|
||||
description.zh_TW = 原版 Transport Tycoon Deluxe Windows 版的圖形。
|
||||
|
||||
[files]
|
||||
|
@@ -10,34 +10,46 @@ version = 1
|
||||
description = Original Transport Tycoon Deluxe Windows edition music.
|
||||
description.af_ZA = Oorspronklike Transport Tycoon Deluxe Windows uitgawe musiek.
|
||||
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الموسيقية نسخة وندوز
|
||||
description.be_BY = Арыгінальны набор музычнага афармленьня з гульні Transport Tycoon Deluxe для Windows.
|
||||
description.bg_BG = Оригинална музика на Transport Tycoon Deluxe за Windows.
|
||||
description.ca_ES = Música Original de Transport Tycoon Deluxe per a Windows.
|
||||
description.cs_CZ = Původní hudba Transport Tycoon Deluxe (verze pro Windows).
|
||||
description.da_DA = Originalmusik fra Transport Tycoon Deluxe Windows-version.
|
||||
description.cy_GB = Cerddoriaeth gwreiddiol fersion Windows o Transport Tycoon Deluxe.
|
||||
description.da_DK = Originalmusik fra Transport Tycoon Deluxe Windows-version.
|
||||
description.de_DE = Original Transport Tycoon Deluxe Windows Musikset.
|
||||
description.el_GR = Αρχική μουσική από το Transport Tycoon Deluxe έκδοση Windows.
|
||||
description.en_GB = Original Transport Tycoon Deluxe Windows edition music.
|
||||
description.en_AU = Original Transport Tycoon Deluxe Windows edition music.
|
||||
description.en_US = Original Transport Tycoon Deluxe Windows edition music.
|
||||
description.es_ES = Música original de Transport Tycoon Deluxe versión Windows.
|
||||
description.et_ET = Algse Transport Tycoon Deluxe Windowsi versiooni muusika.
|
||||
description.fi_FI = Alkuperäinen Transport Tycoon Deluxe Windows musiikki.
|
||||
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.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.
|
||||
description.hu_HU = Az eredeti Transport Tycoon Deluxe Windows verziójának zenéje.
|
||||
description.id_ID = Musik pengiring orisinil Transport Tycoon Deluxe versi Windows.
|
||||
description.is_IS = Upprunalega tónlistin úr Transport Tycoon Deluxe Windows útgáfunni.
|
||||
description.it_IT = Musica originale di Transport Tycoon Deluxe, edizione Windows.
|
||||
description.ja_JP = Transport Tycoon Deluxe オリジナル版 音楽 (Windows)
|
||||
description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 윈도우 에디션의 음악입니다.
|
||||
description.lt_LT = Originali Transport Tycoon Deluxe Windows leidimo muzika.
|
||||
description.nb_NO = Original musikk fra Transport Tycoon Deluxe for Windows.
|
||||
description.nl_NL = Originele muziek van de Transport Tycoon Deluxe Windows-versie.
|
||||
description.nn_NO = Original musikk frå Transport Tycoon Deluxe for Windows.
|
||||
description.pl_PL = Oryginalna edycja utworów muzycznych w Transport Tycoon Deluxe Windows.
|
||||
description.pt_PT = Música original da edição Windows de Transport Tycoon Deluxe.
|
||||
description.ro_RO = Setul de muzică original al Transport Tycoon Deluxe pentru Windows.
|
||||
description.ru_RU = Оригинальный набор музыкального оформления из игры Transport Tycoon Deluxe.
|
||||
description.ru_RU = Оригинальный набор музыкального оформления из игры Transport Tycoon Deluxe для Windows.
|
||||
description.sk_SK = Pôvodná hudba z Transport Tycoon Deluxe (Windows).
|
||||
description.sl_SL = Originalna glasba Transport Tycoon Deluxe različice oken(windows).
|
||||
description.sl_SI = Originalna glasba Transport Tycoon Deluxe različice oken(windows).
|
||||
description.sr_RS = Originalni skup muzičkih numera Transport Tycoon Deluxe Windows izdanja.
|
||||
description.sv_SE = Originalmusiken från Transport Tycoon Deluxe, Windows-utgåvan.
|
||||
description.ta_IN = அசல் டிரான்ஸ்ஃபோர்ட் டைகூன் டீலக்ஸ் விண்டோஸ் பதிப்பு இசை.
|
||||
description.th_TH = เพลงต้นตำหรับชอง Transport Tycoon Deluxe Windows edition
|
||||
description.tr_TR = Orijinal Transport Tycoon Deluxe Windows sürümü müzikleri.
|
||||
description.vi_VN = Nhạc gốc từ phiên bản Transport Tycoon Deluxe trên Windows
|
||||
description.zh_CN = Transport Tycoon Deluxe(运输大亨Windows豪华版)的原版音乐包
|
||||
description.zh_TW = 原版 Transport Tycoon Deluxe Windows 版的音樂。
|
||||
|
||||
[files]
|
||||
|
@@ -10,22 +10,30 @@ version = 0
|
||||
description = Original Transport Tycoon Deluxe Windows edition sounds.
|
||||
description.af_ZA = Oorspronklike Transport Tycoon Deluxe Windows uitgawe klanke.
|
||||
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الصوتية نسخة وندوز
|
||||
description.be_BY = Арыгінальны набор гукавога афармленьня з гульні Transport Tycoon Deluxe для Windows.
|
||||
description.bg_BG = Оригинални звуци на Transport Tycoon Deluxe за Windows.
|
||||
description.ca_ES = Sons originals de Transport Tycoon Deluxe per a Windows.
|
||||
description.cs_CZ = Původní sada zvuků Transport Tycoon Deluxe (verze pro Windows).
|
||||
description.da_DA = Originallyd fra Transport Tycoon Deluxe Windows-version.
|
||||
description.cy_GB = Effeithiau sain gwreiddiol fersiwn Windows o Transport Tycoon Deluxe.
|
||||
description.da_DK = Originallyd fra Transport Tycoon Deluxe Windows-version.
|
||||
description.de_DE = Original Transport Tycoon Deluxe Windows Basissounds.
|
||||
description.el_GR = Αρχικοί ήχοι από το Transport Tycoon Deluxe έκδοση Windows.
|
||||
description.en_GB = Original Transport Tycoon Deluxe Windows edition sounds.
|
||||
description.en_AU = Original Transport Tycoon Deluxe Windows edition sounds.
|
||||
description.en_US = Original Transport Tycoon Deluxe Windows edition sounds.
|
||||
description.es_ES = Sonidos originales de Transport Tycoon Deluxe versión Windows.
|
||||
description.et_ET = Algse Transport Tycoon Deluxe Windowsi versiooni helid.
|
||||
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe Windows äänet.
|
||||
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.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.
|
||||
description.hu_HU = Az eredeti Transport Tycoon Deluxe Windows verziójának hangjai.
|
||||
description.fr_FR = Sons originaux de Transport Tycoon Deluxe (version Windows).
|
||||
description.id_ID = Efek suara orisinil Transport Tycoon Deluxe versi Windows.
|
||||
description.is_IS = Upprunalega hljóðið úr Transport Tycoon Deluxe Windows útgáfunni.
|
||||
description.it_IT = Suoni originali di Transport Tycoon Deluxe, edizione Windows.
|
||||
description.ja_JP = Transport Tycoon Deluxe オリジナル版 効果音 (Windows)
|
||||
description.ko_KR = 오리지널 트랜스포트 타이쿤 디럭스 윈도우 에디션의 효과음입니다.
|
||||
description.lt_LT = Originalūs Transport Tycoon Deluxe Windows leidimo garsai.
|
||||
description.nb_NO = Originale lyder fra Transport Tycoon Deluxe for Windows.
|
||||
description.nl_NL = Originele geluiden van de Transport Tycoon Deluxe Windows-versie.
|
||||
description.nn_NO = Originale lydar frå Transport Tycoon Deluxe for Windows.
|
||||
@@ -34,10 +42,14 @@ description.pt_PT = Sons originais da edição Windows de Transport Tycoon Delux
|
||||
description.ro_RO = Setul de sunete original al Transport Tycoon Deluxe pentru Windows.
|
||||
description.ru_RU = Оригинальный набор звукового оформления из игры Transport Tycoon Deluxe для Windows.
|
||||
description.sk_SK = Pôvodné zvuky Transport Tycoon Deluxe (Windows).
|
||||
description.sl_SL = Originalni zvoki Transport Tycoon Deluxe različice oken(windows).
|
||||
description.sl_SI = Originalni zvoki Transport Tycoon Deluxe različice oken(windows).
|
||||
description.sr_RS = Originalni skup zvukova Transport Tycoon Deluxe Windows izdanja.
|
||||
description.sv_SE = Originalljuden från Transport Tycoon Deluxe, Windows-utgåvan.
|
||||
description.ta_IN = அசல் டிரான்ஸ்ஃபோர்ட் டைகூன் டீலக்ஸ் விண்டோஸ் பதிப்பு ஒலிகள்.
|
||||
description.th_TH = เสียงต้นตำหรับของ Transport Tycoon Deluxe Windows edition
|
||||
description.tr_TR = Orijinal Transport Tycoon Deluxe Windows sürümü sesleri.
|
||||
description.vi_VN = Âm thanh gốc từ phiên bản Transport Tycoon Deluxe trên Windows
|
||||
description.zh_CN = Transport Tycoon Deluxe Windows (运输大亨Windows豪华版)的原版音效包.
|
||||
description.zh_TW = 原版 Transport Tycoon Deluxe Windows 版的音效。
|
||||
|
||||
[files]
|
||||
|
153
changelog.txt
153
changelog.txt
@@ -1,3 +1,128 @@
|
||||
1.3.2-RC2 (2013-07-13)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: [Admin] End-of-rcon data could not be determined reliably for any rcon command [FS#5643] (r25598, r25588, r25587)
|
||||
- Fix: [Content] When the server closed the connection, the client would for eternity try to read a packet and never timeout making it impossible to reconnect [FS#5635] (r25597)
|
||||
- Fix: [Script] Changing the script difficulty level in-game would also change the settings using the default even though they were not allowed to change in-game [FS#5644] (r25592)
|
||||
- Fix: [Admin] Ensure that sent and received length of json strings are the same [FS#5646] (r25590, r25589)
|
||||
- Fix: [Squirrel] Stack overflow did not show an error, due to the stack to throw the error already being full [FS#5320] (r25585)
|
||||
- Fix: [Script] Documentation implied that XXList::AddItem has a default for value if it isn't filled in [FS#5638] (r25579, r25577)
|
||||
- Fix: Layouter caused significant slowdown with text heavy windows, cache it to make it managable (r25574, r25570, r25569, r25567, r25564)
|
||||
- Fix: Make content list appear faster (r25573)
|
||||
- Fix: Non-ICU layouter started new lines with the space which triggered the linebreak (r25568)
|
||||
- Fix: If the next order cannot be resolved, reset the current order property instead of leaving it in an intermediate state [FS#5633] (r25562)
|
||||
- Fix: [Squirrel] Infinite recursion loop in freeing data via a looping set of references [FS#5568] (r25558)
|
||||
- Fix: One could build bridges over owned land of another company [FS#5524] (r25557)
|
||||
- Fix: [Script] Texts from scripts were not validated before they were shown, causing an assertion to trigger [FS#5632] (r25555)
|
||||
- Fix: Provide a warning when no vehicles are available, and tell what to do in that case [FS#5530] (r25553)
|
||||
- Fix: Possible reading of uninitialised memory due to undefined execution order (r25551)
|
||||
- Fix: [Windows] Race condition between two drawing threads could crash OpenTTD [FS#5571] (r25550)
|
||||
- Fix: ICU returns the width of the visual run as if the trailing space was added (in case a newline was added). This caused the width to be more than the requested width, but it would still be drawn correctly [FS#5626] (r25547)
|
||||
- Fix: Small memory leaks (r25546)
|
||||
- Fix: [GS] The checks and validations for setting the extra text in the town window became too stringent [FS#5625] (r25544)
|
||||
|
||||
|
||||
1.3.2-RC1 (2013-06-30)
|
||||
------------------------------------------------------------------------
|
||||
- Remove: SETX(Y) does not work at all with other than default fonts, so get rid of it (r25454)
|
||||
- Fix: strndup should not examine strings beyond its upper limit [FS#5621] (r25527)
|
||||
- Fix: Proper support for Brahmic scripts (e.g. Tamil and Thai) [FS#5481] (r25526, r25525, r25524, r25514, r25513, r25512, r25511, r25501, r25493, r25485, r25483, r25482, r25481, r25478, r25477, r25476, r25474, r25473, r25472, r25471, r25470, r25469, r25468, r25467, r25466, r25465, r25463, r25462, r25455, r25452, r25451, r25450, r25447, r25446, r25445, r25444, r25443, r25442, r25441, r25440, r25439, r25438, r25437, r25436, r25343, r25157)
|
||||
- Fix: SDL does not give an event when an application gets mouse focus while going to full screen, so manually force the mouse-is-in-window state [FS#5587] (r25523)
|
||||
- Fix: [NewGRF] When cargo NewGRF define a multiplier to modify vehicle capacities, use the same multiplier to modify loading speed (r25497, r25479)
|
||||
- Fix: When addings bits to a (train) station, the train trying to stop there could overshoot the (new) stop location and not stop at all [FS#5553] (r25495)
|
||||
- Fix: The face of the manager differed on clients when the company was started after the clients joined [FS#5610] (r25491, r25490)
|
||||
- Fix: Do not send encoded texts to names, but decode them into a plain C string and then pass them on [FS#5613] (r25489, r25488)
|
||||
- Fix: Do not allow control codes in names of things (signs, vehicles, towns, stations, etc), so they have a known maximum fixed size and are, by definition, the same for everyone (r25487)
|
||||
- Fix: Missing length validation for town and president names in script APIs (r25486)
|
||||
- Fix: [OSX] OS X SDK versions >= 10.5 always have a non-const iconv declaration (r25480)
|
||||
- Fix: Disable the depot-refit button in the order GUI, if the consist is not refittable unless it already has a refit order (r25459, r25458, r25457)
|
||||
- Fix: When town creation failed, removing remnants of the construction failed on protected houses [FS#5603] (r25429)
|
||||
- Fix: There were two hotkeys to toggle between 'unload' and 'unload if possible' (r25406)
|
||||
- Fix: The size of station construction windows could oscillate when resizing the window moved the mouse into the window [FS#5596] (r25395)
|
||||
- Fix: Restrict renaming engines to the server, just like renaming towns (r25394)
|
||||
- Fix: Loading only 8 bits into a 16 bit variable could cause endianness problems (r25337)
|
||||
- Fix: Check for zero width space in translations and fail upon finding them [FS#5589] (r25326)
|
||||
- Fix: [SDL] Keyboard input stopped working after fullscreen toggle [FS#5580] (r25318)
|
||||
- Fix: Proper size-estimation for numbers with n digits, i.e. not assume a particular number is the widest [FS#5562] (r25314, r25313)
|
||||
- Fix: Do not focus the editbox in the NewGRF window, if there is no editbox visible (r25307)
|
||||
- Fix: Game Script APIs that execute a DoCommand were returning the same result as in TestMode during world generation [FS#5561] (r25305)
|
||||
- Fix: Build railway fences next to objects, even if they are owned by the same company [FS#5565] (r25302)
|
||||
- Fix: gcc4.6 removed -mno-cygwin option (r25266)
|
||||
|
||||
|
||||
1.3.1 (2013-06-01)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: When overbuilding a reserved track with a non-track station tile, that tile would remain reserved and eventually trigger a crash upon removal [FS#5540] (r25251)
|
||||
|
||||
|
||||
1.3.1-RC1 (2013-05-17)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Translations of baseset descriptions via language files (r25209, r25205)
|
||||
- Feature: Faroese and Scottish Gaelic translations (r25198, r25176)
|
||||
- Feature: Plural form to be used by Scottish Gaelic (1,11; 2,12; 3..10, 13..19; other) (r25078)
|
||||
- Change: [strgen] Allow any number of colour codes in translations (r25193, r25192, r25191)
|
||||
- Change: [Win32] MSVC 2010 comes with stdint.h (r25128)
|
||||
- Change: Be slightly more lenient with trying to detect a subversion repository in case someone has a sparse tags checkout. In that case the .svn folder misses from the $ROOT_DIR because it is in the $ROOT_DIR/.. (i.e. tags) folder (r25107)
|
||||
- Fix: 'No station' error was given, even when there was a station that way occupied or not yours [FS#5546] (r25243)
|
||||
- Fix: Crash when AI is executing a command as it is bankrupted (removed from the game) [FS#5547] (r25236)
|
||||
- Fix: Give bridges owned by noone (from bankrupt companies) to the first company which replaces the bridge. Everyone could have removed/rebuild the bridge anyway [FS#5541] (r25231, r25227)
|
||||
- Fix: [NewGRF] Revise when vehicle running sound effects 04, 07 and 08 are played; in depot or tunnel, or when crashed or stopped: No sound. Braking: Effect 08 instead of 07 [FS#5538] (r25226)
|
||||
- Fix: [NewGRF] Play vehicle sound effect also for planes (r25225)
|
||||
- Fix: [NewGRF] cur_speed is only valid for the front engine, so make other engines in the consist use the speed of the front [FS#5534] (r25224)
|
||||
- Fix: [NewGRF] Make tick_counters work the same for vehicles (r25223, r25222)
|
||||
- Fix: [NewGRF] IsCompatibleTrainStationTile() is not a symmetric function. Clarify the parameters and fix the cases were they were swapped (r25221)
|
||||
- Fix: Consider map border as water with repsect to river/canal continuation (r25220)
|
||||
- Fix: [Script] Clarify on which tiles IsDesertTile and IsSnowTile work, i.e. the ones without infrastructure or buildings, and introduce GetTerrainType for the cases where IsDesertTile/IsSnowTile do not work [FS#5537] (r25213)
|
||||
- Fix: The level crossing sound is an ambient sound and not a new year sound (r25200)
|
||||
- Fix: Original train and road vehicle acceleration did no longer respect bridge speed limits [FS#5523] (r25167)
|
||||
- Fix: [Win32] Do not statically link to SHGetFolderPath as it may not exist, and improve its emulation [FS#5522] (r25155, r25153)
|
||||
- Fix: [Win32] Do not store invalid paths in the search path list (r25154)
|
||||
- Fix: Remove stray reservation from savegames affected by FS#5510 et al. upon loading [FS#5520] (r25152)
|
||||
- Fix: [Script] XXBase::Chance function did not work for large values (>65535) [FS#5517] (r25148)
|
||||
- Fix: Several typos/inconsistencies in English strings [FS#5496] (r25144, r25143)
|
||||
- Fix: When extra dynamite was disabled, towns would be allowed to clear bridges with trams (r25141)
|
||||
- Fix: Towns are build as OWNER_TOWN, so they also need to be removed as OWNER_TOWN otherwise parts might remain [FS#5519] (r25140)
|
||||
- Fix: Editboxes could become too small when resizing windows (r25121)
|
||||
- Fix: Game script language files did not work, when inside a tar [FS#5509] (r25117, r25114)
|
||||
- Fix: [NewGRF] Acceleration of NewGRF aircraft was too fast, while acceleration of default aircraft was way too slow (r25115)
|
||||
- Fix: Pass $LDFLAGS_BUILD to all endian_check compilations (r25108)
|
||||
|
||||
|
||||
1.3.0 (2013-04-01)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: Station rebuilding could leave reserved tiles which caused crashes later on [FS#5510, FS#5516] (r25132)
|
||||
- Fix: When the count for a scrollbar was 0, the inter distance was subtracted too much causing a scrollbar with a negative size (r25123)
|
||||
|
||||
|
||||
1.3.0-RC3 (2013-03-18)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: Limit aircraft property 0D to 19, since the conversion result to km-ish/h needs to fit into a byte [FS#5492] (r25099)
|
||||
- Fix: Clicking the statusbar crashed, when news were pending but no news were shown yet [FS#5486] (r25093)
|
||||
- Fix: Make editbox character filters also apply to pasted content from clipboard (r25090, r25089)
|
||||
- Fix: Catch exception anonymously, if the exception content is not of interest [FS#5500] (r25081)
|
||||
|
||||
|
||||
1.3.0-RC2 (2013-03-05)
|
||||
------------------------------------------------------------------------
|
||||
- Fix: Make sizes of the station preview list and direction selection identical in the station build window [FS#5472] (r25064)
|
||||
- Fix: When allocation of the sprite cache fails, try to allocate less memory and display an error message later on (r25061)
|
||||
- Fix: Refactor Script Debug GUI to only set widget states in OnInvalidateData [FS#5490] (r25052)
|
||||
- Fix: Do not let gcc include files from the 'standard C' include directories to avoid inclusion of header files at the top of the preprocessed nfo files, which cause NFOrenum/GRFcodec to make invalid assumptions about the NFO version (r25050)
|
||||
- Fix: Minimise gaps feature caused removal to only happen at the signal build interval instead of the implicit interval of 1 [FS#5479] (r25038)
|
||||
- Fix: Green path signals would be shown when building them 'under' a train, and they would keep showing green until they were passed again [FS#5480] (r25037)
|
||||
|
||||
|
||||
1.3.0-RC1 (2013-02-19)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: Searching of (missing) content via GrfCrawler (r25024, r25023)
|
||||
- Change: Cleanup goals and cargo monitors of companies when they go bankrupt or are taken over (r24986)
|
||||
- Change: Apply the same name sorting rules to content and NewGRF list as for the server list (r24983)
|
||||
- Fix: [SDL] Crash after bootstrap download of 32bits base set due to referencing a deleted mutex [FS#5466] (r25017)
|
||||
- Fix: [SDL] Improve 8bpp hardware palette support. Instead of always requesting SDL_HWPALETTE, it is now only done for 8bp blitters in fullscreen mode (r25003, r25002, r24993)
|
||||
- Fix: Set vehicle's service interval is percent flag appropriately on creation [FS#5137] (r24998)
|
||||
- Fix: When choosing a train in a depot to attach a newly purchased wagon to, do not consider trains currently moving in and out of the depot (r24987)
|
||||
- Fix: [Script] Crash when passing too many parameters [FS#5465] (r24982, r24981, r24980)
|
||||
|
||||
|
||||
1.3.0-beta2 (2013-02-07)
|
||||
------------------------------------------------------------------------
|
||||
- Feature: [NewGRF] Station randomisation triggers (r24906, r24905)
|
||||
@@ -1703,7 +1828,7 @@
|
||||
- Fix: The lock in the company window was only drawn for your own company [FS#3427] (r18729)
|
||||
- Fix: Some invalid gender/plural indices in strings, which could eventually cause crashes [FS#3480] (r18727)
|
||||
- Fix: With non-uniform industries the 'supplies' text when building a station could be incorrect (missing a cargo) [FS#3463] (r18726)
|
||||
- Fix: Refitting a non-refittable vehicle to it's default cargotype failed, causing problems for AIs [FS#3475] (r18724)
|
||||
- Fix: Refitting a non-refittable vehicle to its default cargotype failed, causing problems for AIs [FS#3475] (r18724)
|
||||
- Fix: The join station window did not account for scrolling, so if you did scroll the station was not joined with the selected station [FS#3476] (r18713)
|
||||
- Fix: The wrong town is mentioned in the error when trying to make one way roads of town owned roads [FS#3478] (r18710)
|
||||
- Fix: Animation buffer for 32bpp-anim blitter was only validated during sprite blitting, other drawing operations did not check it. Initial startup and window resize could therefore lead to crash [FS#3464] (r18709)
|
||||
@@ -2364,7 +2489,7 @@
|
||||
- Feature: [NewGRF] Add support for property 0x13 for Bridges. In other words, one can now specifies a 16 bits cost multiplier (r14172)
|
||||
- Feature: Make it possible to choose between the DOS and Windows graphics packs while retaining the possibility to override the palette (r14151)
|
||||
- Feature: Increase the size of the console backlog. Now it'll only remove backlog items when there are more than a threshold and when they are there longer than (another) threshold (r14056)
|
||||
- Feature: Make it possible to filter list_patches output like it's done for other list_* console commands (r14041)
|
||||
- Feature: Make it possible to filter list_patches output like it is done for other list_* console commands (r14041)
|
||||
- Feature: Path based signalling (r13926-13967)
|
||||
- Feature: Show [total-]cargo info in depot when [ctrl-]right-clicking on vehicle (r13923)
|
||||
- Feature: NewGRF presets, selected by a drop down list in the NewGRF window. Presets are saved in the config file (r13781)
|
||||
@@ -2444,7 +2569,7 @@
|
||||
- Fix: Order pool seemed to look full when it was not as it only checked whether it was possible to allocate a new block of pool items instead of checking for free pool items (r14547)
|
||||
- Fix: Do not deliver cargo to industries not inside station catchment area [FS#2138] (r14530)
|
||||
- Fix: Allocate stub (empty) sound entries when loading an empty/corrupt/incorrectly sized sample.cat instead of making valid NewGRFs fail to load (r14527)
|
||||
- Fix: Make sure trains stop at the end of a station; a 3/8th length train did stop 2/8th of it's length too early causing a 63/8th long train not to fit in a 4 tile station [FS#2379] (r14526)
|
||||
- Fix: Make sure trains stop at the end of a station; a 3/8th length train did stop 2/8th of its length too early causing a 63/8th long train not to fit in a 4 tile station [FS#2379] (r14526)
|
||||
- Fix: Small possible chance of desync due to sorting on pointer instead of by (station) index [FS#2348] (r14463)
|
||||
- Fix: When a road stop gets moved make sure to update the destination of RVs going to that road stop [FS#2330] (r14446)
|
||||
- Fix: Support for spaces in directories passed to ./configure [FS#1802] (r14440)
|
||||
@@ -2642,7 +2767,7 @@
|
||||
- Fix: Do not crash very hard on unrecognised savegames, just go back to the intro menu instead (r12707)
|
||||
- Fix: In some cases a news messages would not be shown [FS#1906] (r12683)
|
||||
- Fix: Removing road pieces from a town gave you twice the intended penalty [FS#1920] (r12682)
|
||||
- Fix: When a road vehicle has a tram only stop multiple times in a row in it's orders, only the first one would be skipped [FS#1918] (r12678)
|
||||
- Fix: When a road vehicle has a tram only stop multiple times in a row in its orders, only the first one would be skipped [FS#1918] (r12678)
|
||||
- Fix: Colour remaps on station sprites only worked for company colours [FS#1902] (r12674)
|
||||
- Fix: Remove buggy buoys at tile 0 from old TTDP savegames (r12642)
|
||||
- Fix: Possible NULL pointer dereference when reading some NewGRF data [FS#1913] (r12637)
|
||||
@@ -3355,7 +3480,7 @@
|
||||
- Fix: Some disaster-events fixed: combat chopper shoots from right position, submarine once again moves around (r8140, r8158)
|
||||
- Fix: 'out of sprite memory' warning messages due to incorrect assumption of requested memory for sprites (r8133)
|
||||
- Fix: Buoys are now built and numbered 1..9 not 9..1 [FS#538] (r8123)
|
||||
- Fix: Clicking for more news properly cycles through the news history backwards, and does not show the first item doubly if it's already open (r8049)
|
||||
- Fix: Clicking for more news properly cycles through the news history backwards, and does not show the first item doubly if it is already open (r8049)
|
||||
- Fix: Crash when removing a town in the scenario editor while the query window is open for one of the town's tiles (r8030)
|
||||
- Fix: Overflow of system-ticks was not handled properly, resulting in a possibly unresponsive server/client (r8028)
|
||||
- Fix: Automatic pause interfering with 'pause_on_join setting' in MP when <shift> is pressed [FS#486] (r8027)
|
||||
@@ -3476,7 +3601,7 @@
|
||||
- Codechange: Show more correct capacity of articulated wagons in the train purchase list (r6650)
|
||||
- Codechange: When showing tooltips, properly position the tooltip taking into account window dimensions and cursor (r6405)
|
||||
- Codechange: Speed up the animated cursors a bit so they move once in a while at least (r6367)
|
||||
- Codechange: Remove the 'unsorted' vehicle sorter, because it's plain useless (r6270)
|
||||
- Codechange: Remove the 'unsorted' vehicle sorter, because it is plain useless (r6270)
|
||||
- Codechange: Remove MSVC6 support. The compiler was too stupid and too many workarounds were needed. Please switch to mingw or VC2005++ express (r5286)
|
||||
- Codechange: Allow a switch in Makefile.config to disable threads in OpenTTD (r5978)
|
||||
- Codechange: [Windows] Add native x64 target to VS2005 project files (r5813)
|
||||
@@ -3583,9 +3708,9 @@
|
||||
- Fix: The wrong IP could get unbanned, e.g. 'unban 1.2.3.42' could result in unbanning 1.2.3.4
|
||||
- Fix: It was possible to convert the railtype of a bridge while a train was on it
|
||||
- Fix: It was possible to rename signs or waypoints with the chat box
|
||||
- Fix: Be more strict what it means for an aircraft to be in a hangar: It's not just being stopped on a hangar tile
|
||||
- Fix: If a road vehicle is on a road depot tile and stopped does not mean it's in the depot. Use the proper test for this
|
||||
- Fix: [AI] The AI should send a plane into a hangar if it's not in a hangar _or_ not stopped, not when it's not in a hangar _and_ not stopped
|
||||
- Fix: Be more strict what it means for an aircraft to be in a hangar: It is not just being stopped on a hangar tile
|
||||
- Fix: If a road vehicle is on a road depot tile and stopped does not mean it is in the depot. Use the proper test for this
|
||||
- Fix: [AI] The AI should send a plane into a hangar if it is not in a hangar _or_ not stopped, not when it is not in a hangar _and_ not stopped
|
||||
- Fix: [AI] The trolly AI used information from the wrong industry when calculating the amount of to be transported goods
|
||||
- Fix: [NTP] Fix NTP over bridges: do not check the rail type when on a bridge
|
||||
- Fix: Truncate text in dropdown lists to stop text overflowing
|
||||
@@ -3657,7 +3782,7 @@
|
||||
- Fix: Update german and finnish languages (r3968)
|
||||
- Fix: Properly set back the owner of a crossing/road-under bridge after removing it (r3967)
|
||||
- Fix: [Autoreplace] Autoreplacing trains now keep their tile length instead of their pixel length [FS#67] (r3964)
|
||||
- Fix: Mark the right tile as dirty. It's just a graphical glitch which happend in r1592 (r3962)
|
||||
- Fix: Mark the right tile as dirty. It is just a graphical glitch which happend in r1592 (r3962)
|
||||
- Fix: Fix crash when resizing news history window (r3961)
|
||||
- Fix: Correctly implement minimum search, so road vehicles head twoards the closest station, not the last one in the list (r3960)
|
||||
- Fix: The tooltips for raising and lowering land buttons in the scenario editor are interchanged [FS#61] (r3959)
|
||||
@@ -3758,7 +3883,7 @@
|
||||
- Fix: Spaces in the path to the MIDI files caused the Windows MIDI player to fail (r2563)
|
||||
- Fix: Set server map name to the loaded name of the game/scenario (r2610)
|
||||
- Fix: Improve the old pathfinder. Changed it to A* instead of Dijkstra. Benchmark shows that NTP is now around 10x faster than NPF (r2635)
|
||||
- Fix: Correctly save and load company_value, it's 64 bits wide, not 32 bits (r2684)
|
||||
- Fix: Correctly save and load company_value, it is 64 bits wide, not 32 bits (r2684)
|
||||
- Fix: Volume control works now for the DirectMusic MIDI backend (r2712)
|
||||
- Fix: Change the fence algorithm so it removes fences when no farm tile is adjacent (r2739)
|
||||
- Fix: Tree tiles above the snow line got redrawn disproportionately often (r2750)
|
||||
@@ -3888,7 +4013,7 @@
|
||||
- Fix: Speeding up when pressing ALT+TAB (Windows) [SF#1114261]
|
||||
- Fix: Signals disappear after typing text and pressing enter!. Signs in Scenario Editor have no owner so ignore that [SF#1149403]
|
||||
- Fix: Single tile Bridge in Volcano City scenario. Some bridges still had the old single-tile bridge bug that was caused by improper town growth in combination with DC_AUTO. Fixed the scenario [SF#1149766]
|
||||
- Fix: Stop startup memory corruption crash using optimized MSVC6. MSVC6 workaround as it's too stupid again for its own good [SF#1119147]
|
||||
- Fix: Stop startup memory corruption crash using optimized MSVC6. MSVC6 workaround as it is too stupid again for its own good [SF#1119147]
|
||||
- Fix: Dedicated server now accepts '-g' (load game) as param [SF#1101874]
|
||||
- Fix: Crash with German umlauts in station names [SF#1155696]
|
||||
- Fix: Segmentation fault when loading savegame, out of bounds array check [SF#1158618]
|
||||
@@ -3914,7 +4039,7 @@
|
||||
- Fix: [NewGRF] Helicopters are correctly recognized
|
||||
- Fix: [Autoreplace] Made sure that planes only show planes in replace GUI and helicopters only show helicopters
|
||||
- Fix: Crash when generating tropical maps
|
||||
- Fix: [Autoreplace] Cheaters can no longer exploit autoreplace to get vehicles, that's not invented yet
|
||||
- Fix: [Autoreplace] Cheaters can no longer exploit autoreplace to get vehicles, that is not invented yet
|
||||
- Fix: [Autoreplace] Fixed a stupid bug introduced in r1687, that made a crash if anybody tried to autoreplace anything but an aircraft
|
||||
- Fix: Expand rail stations beyond maximum spread
|
||||
- Fix: [Autoreplace] Fixed a typo that could prevent autoreplaced aircraft from automatically go to a hangar
|
||||
@@ -4000,7 +4125,7 @@
|
||||
- Fix: Aircraft in hangar messages are now revalidated before display [SF#1104969]
|
||||
- Fix: Destroyed train locks crossings [SF#1105112]
|
||||
- Fix: Upgrade rail fails when train under bridge [SF#1105281]
|
||||
- Fix: Trains do not think they're on a slope any more while they drive around in a tunnel [SF#1105959]
|
||||
- Fix: Trains do not think they are on a slope any more while they drive around in a tunnel [SF#1105959]
|
||||
- Fix: Buoys can now only be removed if no ship has it in their schedule. This makes buoys more useable in multiplayer games again, as buoys cannot be deleted by other players if they are used [SF#1105963]
|
||||
- Fix: Graph's keys get confused [SF#1106354]
|
||||
- Fix: Placing signals with 2x1 drags is treated as placing a single signal [SF#1106930]
|
||||
|
29
config.lib
29
config.lib
@@ -1012,6 +1012,12 @@ check_params() {
|
||||
|
||||
if [ -d "$ROOT_DIR/.svn" ] && [ -n "`svn help 2>/dev/null`" ]; then
|
||||
log 1 "checking revision... svn detection"
|
||||
elif [ -d "$ROOT_DIR/../.svn" ] && [ -n "`svn help 2>/dev/null`" ] && [ -n "`LC_ALL=C svn info $ROOT_DIR/.. | grep '^URL:.*tags$'`" ]; then
|
||||
# subversion changed its behaviour; now not all folders have a .svn folder,
|
||||
# but only the root folder. Since making tags requires a (sparse) checkout
|
||||
# of the tags folder, the folder of the tag does not have a .svn folder
|
||||
# anymore and this fails to detect the subversion repository checkout.
|
||||
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
|
||||
@@ -1481,12 +1487,15 @@ make_cflags_and_ldflags() {
|
||||
LDFLAGS="$LDFLAGS -mwin32"
|
||||
fi
|
||||
if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ]; then
|
||||
flags="$flags -mno-cygwin"
|
||||
if [ $cc_version -lt 46 ]; then
|
||||
flags="$flags -mno-cygwin"
|
||||
LDFLAGS="$LDFLAGS -mno-cygwin"
|
||||
fi
|
||||
|
||||
if [ "$enable_console" != "0" ]; then
|
||||
LDFLAGS="$LDFLAGS -mno-cygwin -Wl,--subsystem,console"
|
||||
LDFLAGS="$LDFLAGS -Wl,--subsystem,console"
|
||||
else
|
||||
LDFLAGS="$LDFLAGS -mno-cygwin -Wl,--subsystem,windows"
|
||||
LDFLAGS="$LDFLAGS -Wl,--subsystem,windows"
|
||||
fi
|
||||
|
||||
LIBS="$LIBS -lws2_32 -lwinmm -lgdi32 -ldxguid -lole32"
|
||||
@@ -1709,9 +1718,9 @@ make_cflags_and_ldflags() {
|
||||
|
||||
# Some icu-configs have the 'feature' of not adding a space where others do add the space
|
||||
if [ "$static_icu" != "0" ]; then
|
||||
LIBS="$LIBS `$icu_config --ldflags-searchpath` `$icu_config --ldflags-libsonly | tr '\n\r' ' ' | sed s/licu/lsicu/g`"
|
||||
LIBS="$LIBS `$icu_config --ldflags-searchpath` `$icu_config --ldflags-libsonly --ldflags-layout | tr '\n\r' ' ' | sed s/licu/lsicu/g`"
|
||||
else
|
||||
LIBS="$LIBS `$icu_config --ldflags-searchpath` `$icu_config --ldflags-libsonly | tr '\n\r' ' '`"
|
||||
LIBS="$LIBS `$icu_config --ldflags-searchpath` `$icu_config --ldflags-libsonly --ldflags-layout | tr '\n\r' ' '`"
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1745,7 +1754,7 @@ make_cflags_and_ldflags() {
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$have_non_const_iconv" != "no" ]; then
|
||||
if [ "$os" != "OSX" ] && [ "$have_non_const_iconv" != "no" ]; then
|
||||
CFLAGS="$CFLAGS -DHAVE_NON_CONST_ICONV"
|
||||
fi
|
||||
fi
|
||||
@@ -3429,7 +3438,7 @@ generate_settings() {
|
||||
}
|
||||
|
||||
generate_grf() {
|
||||
STAGE="[GRF]"
|
||||
STAGE="[BASESET]"
|
||||
|
||||
make_sed
|
||||
|
||||
@@ -3479,7 +3488,7 @@ generate_src_osx() {
|
||||
CFLAGS="-isysroot $osx_sdk_path $CFLAGS_orig"
|
||||
LDFLAGS="-Wl,-syslibroot,$osx_sdk_path $LDFLAGS_orig"
|
||||
fi
|
||||
CFLAGS="$CFLAGS -D_SQ64 -DHAVE_NON_CONST_ICONV -DNO_QUICKTIME -UENABLE_COCOA_QUICKDRAW"
|
||||
CFLAGS="$CFLAGS -D_SQ64 -DNO_QUICKTIME -UENABLE_COCOA_QUICKDRAW"
|
||||
LIBS="`echo $LIBS | sed 's/-framework QuickTime//'`"
|
||||
fi
|
||||
|
||||
@@ -3638,6 +3647,7 @@ showhelp() {
|
||||
echo " --with-makedepend[=makedepend] enables makedepend support"
|
||||
echo " --with-ccache enables ccache support"
|
||||
echo " --with-distcc enables distcc support"
|
||||
echo " --without-grfcodec disable usage of grfcodec and re-generation of base sets"
|
||||
echo ""
|
||||
echo "Some influential environment variables:"
|
||||
echo " CC C compiler command"
|
||||
@@ -3648,6 +3658,9 @@ showhelp() {
|
||||
echo " LDFLAGS linker flags, e.g. -L<lib dir> if you"
|
||||
echo " have libraries in a nonstandard"
|
||||
echo " directory <lib dir>"
|
||||
echo " CFLAGS_BUILD C compiler flags for build time tool generation"
|
||||
echo " CXXFLAGS_BUILD C++ compiler flags for build time tool generation"
|
||||
echo " LDFLAGS_BUILD linker flags for build time tool generation"
|
||||
echo ""
|
||||
echo "Use these variables to override the choices made by 'configure' or to help"
|
||||
echo "it to find libraries and programs with nonstandard names/locations."
|
||||
|
@@ -150,7 +150,8 @@ Table of contents
|
||||
|
||||
Note: No additional authentication is required for rcon commands.
|
||||
|
||||
The server will reply with a ADMIN_PACKET_SERVER_RCON packet. Applications
|
||||
The server will reply with one or more ADMIN_PACKET_SERVER_RCON packets.
|
||||
Finally an ADMIN_PACKET_ADMIN_RCON_END packet will be sent. Applications
|
||||
will not receive the answer twice if they have asked for the AdminUpdateType
|
||||
ADMIN_UPDATE_CONSOLE, as the result is not printed on the servers console
|
||||
(just like clients rcon commands).
|
||||
@@ -160,6 +161,13 @@ Table of contents
|
||||
Chat from the server itself will only be sent to the admin network when it
|
||||
was not sent from the admin network.
|
||||
|
||||
Note that when content is queried or updated via rcon, the processing
|
||||
happens asynchronously. But the ADMIN_PACKET_ADMIN_RCON_END packet is sent
|
||||
already right after the content is requested as there's no immediate output.
|
||||
Thus other packages and the output of content rcon command may be sent at
|
||||
an arbitrary later time, mixing into the output of other console activity,
|
||||
e.g. also of possible subsequent other rcon commands sent.
|
||||
|
||||
|
||||
5.0) Sending chat
|
||||
---- ------------
|
||||
|
@@ -70,7 +70,7 @@ ROOT_DIR=`pwd`
|
||||
# Determine if we are using a modified version
|
||||
# Assume the dir is not modified
|
||||
MODIFIED="0"
|
||||
if [ -d "$ROOT_DIR/.svn" ]; then
|
||||
if [ -d "$ROOT_DIR/.svn" ] || [ -d "$ROOT_DIR/../.svn" ]; then
|
||||
# We are an svn checkout
|
||||
if [ -n "`svnversion | grep 'M'`" ]; then
|
||||
MODIFIED="2"
|
||||
|
@@ -1,14 +1,13 @@
|
||||
OpenTTD's known bugs
|
||||
Last updated: 2012-06-01
|
||||
Release version: 1.2.1
|
||||
Last updated: 2013-07-14
|
||||
Release version: 1.3.2-RC2
|
||||
------------------------------------------------------------------------
|
||||
|
||||
|
||||
Table of contents
|
||||
-----------------
|
||||
1.0) About
|
||||
2.0) Known bugs in this release
|
||||
* 2.1) Known bugs that will not be solved
|
||||
2.0) Known bugs
|
||||
|
||||
|
||||
1.0) About
|
||||
@@ -17,36 +16,13 @@ All bugs listed below are marked as known. Please do not submit any bugs
|
||||
that are the same as these. If you do, do not act surprised, because
|
||||
we WILL flame you!!
|
||||
|
||||
Of course if you have more knowledge about any of these bugs, have more
|
||||
specifics, we welcome you to report them. React to the given bug indicated
|
||||
by the number below on http://bugs.openttd.org.
|
||||
The current list of known bugs that we intend to fix can be found in our
|
||||
bug tracking system at: http://bugs.openttd.org
|
||||
Also check the closed bugs when searching for your bug in this system as
|
||||
we might have fixed the bug in the mean time.
|
||||
|
||||
|
||||
2.0) Known bugs in this release
|
||||
---- --------------------------
|
||||
The following bugs are known to exist in this release and we intend to
|
||||
fix them. Some bugs are known but are not fixable or fixing them would
|
||||
cause further problems. Those bugs can be found in the "Known bugs that
|
||||
will not be solved" section.
|
||||
|
||||
The bugs in this section all refer to a ticket in our bug tracking system
|
||||
that you can find at: http://bugs.openttd.org
|
||||
If the bugs are closed but still listed here it means that the bug is fixed
|
||||
and that the nightlies and next major release will not have that bug.
|
||||
|
||||
Issues prefixed with [OSX] are required to be fixed before we consider
|
||||
officially supporting Mac OS X again. For now it remains unsupported and
|
||||
we only apply bug fixes provided by the community but we are unable to fix
|
||||
these bugs ourselves.
|
||||
|
||||
- 4857 [OSX] No support for detecting mono space font
|
||||
- 4847 [OSX] No support for bootstrap downloading of base graphics
|
||||
- 4744 [OSX] Crash when switching to full screen with OS X Lion
|
||||
- 4689 [OSX] Crash when hiding window after coming from full screen
|
||||
- 4420 [OSX] OS' mouse pointer still shows
|
||||
- 2484 [OSX] Cannot enter CJK characters
|
||||
|
||||
2.1) Known bugs that will not be solved
|
||||
2.0) Known bugs
|
||||
---- ----------------------------------
|
||||
This section lists all known bugs that we do not intend to fix and the
|
||||
reasons why we think that fixing them is infeasible. We might make some
|
||||
|
50
media/baseset/no_music.obm
Normal file
50
media/baseset/no_music.obm
Normal file
@@ -0,0 +1,50 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents more or less nothingness
|
||||
;
|
||||
[metadata]
|
||||
name = NoMusic
|
||||
shortname = NULL
|
||||
version = 0
|
||||
fallback = true
|
||||
!! description STR_BASEMUSIC_NONE_DESCRIPTION
|
||||
|
||||
[files]
|
||||
theme =
|
||||
old_0 =
|
||||
old_1 =
|
||||
old_2 =
|
||||
old_3 =
|
||||
old_4 =
|
||||
old_5 =
|
||||
old_6 =
|
||||
old_7 =
|
||||
old_8 =
|
||||
old_9 =
|
||||
new_0 =
|
||||
new_1 =
|
||||
new_2 =
|
||||
new_3 =
|
||||
new_4 =
|
||||
new_5 =
|
||||
new_6 =
|
||||
new_7 =
|
||||
new_8 =
|
||||
new_9 =
|
||||
ezy_0 =
|
||||
ezy_1 =
|
||||
ezy_2 =
|
||||
ezy_3 =
|
||||
ezy_4 =
|
||||
ezy_5 =
|
||||
ezy_6 =
|
||||
ezy_7 =
|
||||
ezy_8 =
|
||||
ezy_9 =
|
||||
|
||||
[md5s]
|
||||
|
||||
[names]
|
||||
|
||||
[origin]
|
||||
default = This file was part of your OpenTTD installation.
|
18
media/baseset/no_sound.obs
Normal file
18
media/baseset/no_sound.obs
Normal file
@@ -0,0 +1,18 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents more or less nothingness
|
||||
;
|
||||
[metadata]
|
||||
name = NoSound
|
||||
shortname = NULL
|
||||
version = 2
|
||||
fallback = true
|
||||
!! description STR_BASESOUNDS_NONE_DESCRIPTION
|
||||
|
||||
[files]
|
||||
samples =
|
||||
|
||||
[md5s]
|
||||
|
||||
[origin]
|
||||
default = This file was part of your OpenTTD installation.
|
31
media/baseset/orig_dos.obg
Normal file
31
media/baseset/orig_dos.obg
Normal file
@@ -0,0 +1,31 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original graphics as on the non-German Transport
|
||||
; Tycoon Deluxe DOS CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_dos
|
||||
shortname = TTDD
|
||||
version = 1
|
||||
palette = DOS
|
||||
!! description STR_BASEGRAPHICS_DOS_DESCRIPTION
|
||||
|
||||
[files]
|
||||
base = TRG1.GRF
|
||||
logos = TRGI.GRF
|
||||
arctic = TRGC.GRF
|
||||
tropical = TRGH.GRF
|
||||
toyland = TRGT.GRF
|
||||
extra = OPENTTD.GRF
|
||||
|
||||
[md5s]
|
||||
TRG1.GRF = 9311676280e5b14077a8ee41c1b42192
|
||||
TRGI.GRF = da6a6c9dcc451eec88d79211437b76a8
|
||||
TRGC.GRF = ed446637e034104c5559b32c18afe78d
|
||||
TRGH.GRF = ee6616fb0e6ef6b24892c58c93d86fc9
|
||||
TRGT.GRF = e30e8a398ae86c03dc534a8ac7dfb3b6
|
||||
OPENTTD.GRF =
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
OPENTTD.GRF = This file was part of your OpenTTD installation.
|
19
media/baseset/orig_dos.obs
Normal file
19
media/baseset/orig_dos.obs
Normal file
@@ -0,0 +1,19 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original sounds as on the Transport
|
||||
; Tycoon Deluxe DOS CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_dos
|
||||
shortname = TTDO
|
||||
version = 0
|
||||
!! description STR_BASESOUNDS_DOS_DESCRIPTION
|
||||
|
||||
[files]
|
||||
samples = SAMPLE.CAT
|
||||
|
||||
[md5s]
|
||||
SAMPLE.CAT = 422ea3dd074d2859bb51639a6e0e85da
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
31
media/baseset/orig_dos_de.obg
Normal file
31
media/baseset/orig_dos_de.obg
Normal file
@@ -0,0 +1,31 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original graphics as on the German Transport
|
||||
; Tycoon Deluxe DOS CD. It contains one broken sprite.
|
||||
;
|
||||
[metadata]
|
||||
name = original_dos_de
|
||||
shortname = TTDD
|
||||
version = 0
|
||||
palette = DOS
|
||||
!! description STR_BASEGRAPHICS_DOS_DE_DESCRIPTION
|
||||
|
||||
[files]
|
||||
base = TRG1.GRF
|
||||
logos = TRGI.GRF
|
||||
arctic = TRGC.GRF
|
||||
tropical = TRGH.GRF
|
||||
toyland = TRGT.GRF
|
||||
extra = OPENTTD.GRF
|
||||
|
||||
[md5s]
|
||||
TRG1.GRF = 9311676280e5b14077a8ee41c1b42192
|
||||
TRGI.GRF = da6a6c9dcc451eec88d79211437b76a8
|
||||
TRGC.GRF = ed446637e034104c5559b32c18afe78d
|
||||
TRGH.GRF = ee6616fb0e6ef6b24892c58c93d86fc9
|
||||
TRGT.GRF = fcde1d7e8a74197d72a62695884b909e
|
||||
OPENTTD.GRF =
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
OPENTTD.GRF = This file was part of your OpenTTD installation.
|
31
media/baseset/orig_win.obg
Normal file
31
media/baseset/orig_win.obg
Normal file
@@ -0,0 +1,31 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original graphics as on the Transport
|
||||
; Tycoon Deluxe for Windows CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_windows
|
||||
shortname = TTDW
|
||||
version = 0
|
||||
palette = Windows
|
||||
!! description STR_BASEGRAPHICS_WIN_DESCRIPTION
|
||||
|
||||
[files]
|
||||
base = TRG1R.GRF
|
||||
logos = TRGIR.GRF
|
||||
arctic = TRGCR.GRF
|
||||
tropical = TRGHR.GRF
|
||||
toyland = TRGTR.GRF
|
||||
extra = OPENTTD.GRF
|
||||
|
||||
[md5s]
|
||||
TRG1R.GRF = b04ce593d8c5016e07473a743d7d3358
|
||||
TRGIR.GRF = 0c2484ff6be49fc63a83be6ab5c38f32
|
||||
TRGCR.GRF = 3668f410c761a050b5e7095a2b14879b
|
||||
TRGHR.GRF = 06bf2b7a31766f048baac2ebe43457b1
|
||||
TRGTR.GRF = de53650517fe661ceaa3138c6edb0eb8
|
||||
OPENTTD.GRF =
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
||||
OPENTTD.GRF = This file was part of your OpenTTD installation.
|
94
media/baseset/orig_win.obm
Normal file
94
media/baseset/orig_win.obm
Normal file
@@ -0,0 +1,94 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original music as on the Transport
|
||||
; Tycoon Deluxe for Windows CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_windows
|
||||
shortname = TTDW
|
||||
version = 1
|
||||
!! description STR_BASEMUSIC_WIN_DESCRIPTION
|
||||
|
||||
[files]
|
||||
theme = GM_TT00.GM
|
||||
old_0 = GM_TT02.GM
|
||||
old_1 = GM_TT06.GM
|
||||
old_2 = GM_TT03.GM
|
||||
old_3 = GM_TT12.GM
|
||||
old_4 = GM_TT08.GM
|
||||
old_5 = GM_TT13.GM
|
||||
old_6 = GM_TT14.GM
|
||||
old_7 = GM_TT10.GM
|
||||
old_8 =
|
||||
old_9 =
|
||||
new_0 = GM_TT04.GM
|
||||
new_1 = GM_TT01.GM
|
||||
new_2 = GM_TT05.GM
|
||||
new_3 = GM_TT15.GM
|
||||
new_4 = GM_TT11.GM
|
||||
new_5 = GM_TT16.GM
|
||||
new_6 = GM_TT09.GM
|
||||
new_7 =
|
||||
new_8 =
|
||||
new_9 =
|
||||
ezy_0 = GM_TT18.GM
|
||||
ezy_1 = GM_TT19.GM
|
||||
ezy_2 = GM_TT21.GM
|
||||
ezy_3 = GM_TT17.GM
|
||||
ezy_4 = GM_TT20.GM
|
||||
ezy_5 = GM_TT07.GM
|
||||
ezy_6 =
|
||||
ezy_7 =
|
||||
ezy_8 =
|
||||
ezy_9 =
|
||||
|
||||
[md5s]
|
||||
GM_TT00.GM = 45cfec1b9d8c7a0ad45e755833cbf221
|
||||
GM_TT01.GM = ab14ed3392d848abd2a2e90a9d75d121
|
||||
GM_TT02.GM = dd4f696e4be5987ce738257b08b50171
|
||||
GM_TT03.GM = a1bfde23343df9e4063419bf29c166b8
|
||||
GM_TT04.GM = 4e6943aa0c455203d76c79389054747d
|
||||
GM_TT05.GM = cee281cb85a2e2343552d97640545a47
|
||||
GM_TT06.GM = 26d1de5efa8675f94065784e9d539e49
|
||||
GM_TT07.GM = 6f2691e17558f552ec4c565e4ab7139c
|
||||
GM_TT08.GM = a42bf2cb3340a822f1a69646fc7a487d
|
||||
GM_TT09.GM = eb35761a58a8df3c59ed8929cce13916
|
||||
GM_TT10.GM = 42fecd686720a785d20a78590c466a82
|
||||
GM_TT11.GM = 50ef1ef02e49d2112786dd45e69dc3ee
|
||||
GM_TT12.GM = 4ce707a0e0e72419f0681dd9bd95271b
|
||||
GM_TT13.GM = e765753be29d889ec818f38009103619
|
||||
GM_TT14.GM = 270e2d63bd32b95a4d007ce15a6ce45f
|
||||
GM_TT15.GM = 89e116a1c0c69f1845cc903a9bfbe460
|
||||
GM_TT16.GM = f824e2371b3bedfe61aad4b9c62dd6be
|
||||
GM_TT17.GM = 1b23eebb0796c1ab99cd97fa7082cf7b
|
||||
GM_TT18.GM = 15650de3bad645d0e88c4f5c7a2df92a
|
||||
GM_TT19.GM = 7aec079e15bd09588660b85545ac4dfc
|
||||
GM_TT20.GM = 1509097889dee617aa1e9a1738a5a930
|
||||
GM_TT21.GM = a8d0aaad02e1a762d8d54cf81da56bab
|
||||
|
||||
[names]
|
||||
GM_TT00.GM = Tycoon DELUXE Theme
|
||||
GM_TT01.GM = Snarl Up
|
||||
GM_TT02.GM = Easy Driver
|
||||
GM_TT03.GM = Little Red Diesel
|
||||
GM_TT04.GM = City Groove
|
||||
GM_TT05.GM = Aliens Ate My Railway
|
||||
GM_TT06.GM = Stoke It
|
||||
GM_TT07.GM = Don't Walk!
|
||||
GM_TT08.GM = Sawyer's Tune
|
||||
GM_TT09.GM = Fell Apart On Me
|
||||
GM_TT10.GM = Can't Get There From Here
|
||||
GM_TT11.GM = Hard Drivin'
|
||||
GM_TT12.GM = Road Hog
|
||||
GM_TT13.GM = Hold That Train!
|
||||
GM_TT14.GM = Broomer's Oil Rag
|
||||
GM_TT15.GM = Goss Groove
|
||||
GM_TT16.GM = Small Town
|
||||
GM_TT17.GM = Cruise Control
|
||||
GM_TT18.GM = Stroll On
|
||||
GM_TT19.GM = Funk Central
|
||||
GM_TT20.GM = Jammit
|
||||
GM_TT21.GM = Movin' On
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
19
media/baseset/orig_win.obs
Normal file
19
media/baseset/orig_win.obs
Normal file
@@ -0,0 +1,19 @@
|
||||
; $Id$
|
||||
;
|
||||
; This represents the original sounds as on the Transport
|
||||
; Tycoon Deluxe for Windows CD.
|
||||
;
|
||||
[metadata]
|
||||
name = original_windows
|
||||
shortname = TTDO
|
||||
version = 0
|
||||
!! description STR_BASESOUNDS_WIN_DESCRIPTION
|
||||
|
||||
[files]
|
||||
samples = SAMPLE.CAT
|
||||
|
||||
[md5s]
|
||||
SAMPLE.CAT = 9212e81e72badd4bbe1eaeae66458e10
|
||||
|
||||
[origin]
|
||||
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
|
69
media/baseset/translations.awk
Normal file
69
media/baseset/translations.awk
Normal file
@@ -0,0 +1,69 @@
|
||||
# $Id: openttd.desktop.translation.awk 24100 2012-04-08 14:29:31Z rubidium $
|
||||
|
||||
# This file is part of OpenTTD.
|
||||
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
# OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#
|
||||
# Awk script to extract translations for baseset descriptions
|
||||
# from lang files for insertion into .obg/obs/obm files.
|
||||
# If there is no translation, there is no output.
|
||||
#
|
||||
# The input file is scanned for the pattern
|
||||
# !! <ini-key> <STR_id>
|
||||
#
|
||||
# The lang files (passed as variable 'langfiles') are scanned for <STR_id> and
|
||||
# the translations are added to the output file:
|
||||
# <ini-key>.<iso-code> = <translation>
|
||||
#
|
||||
|
||||
# Simple insertion sort since not all AWKs have a sort implementation
|
||||
function isort(A) {
|
||||
n = 0
|
||||
for (val in A) {
|
||||
n++;
|
||||
}
|
||||
|
||||
for (i = 2; i <= n; i++) {
|
||||
j = i;
|
||||
hold = A[j]
|
||||
while (A[j - 1] > hold) {
|
||||
j--;
|
||||
A[j + 1] = A[j]
|
||||
}
|
||||
A[j] = hold
|
||||
}
|
||||
|
||||
return n
|
||||
}
|
||||
|
||||
/^!!/ {
|
||||
ini_key = $2;
|
||||
str_id = $3;
|
||||
|
||||
file = langfiles
|
||||
while ((getline < file) > 0) {
|
||||
if (match($0, "##isocode") > 0) {
|
||||
lang = $2;
|
||||
} else if (match($0, "^" str_id " *:") > 0) {
|
||||
sub("^[^:]*:", "", $0)
|
||||
i++;
|
||||
if (lang == "en_GB") {
|
||||
texts[i] = ini_key " = "$0;
|
||||
} else {
|
||||
texts[i] = ini_key "." lang " = "$0;
|
||||
}
|
||||
}
|
||||
}
|
||||
close(file);
|
||||
|
||||
count = isort(texts);
|
||||
for (i = 1; i <= count; i++) {
|
||||
print texts[i]
|
||||
}
|
||||
|
||||
next
|
||||
}
|
||||
|
||||
{ print }
|
@@ -1,284 +1,332 @@
|
||||
openttd (1.3.0-beta2) unstable; urgency=low
|
||||
openttd (1.3.2~RC2-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.2-RC2
|
||||
|
||||
-- OpenTTD <info@openttd.org> Sat, 13 Jul 2013 12:00:00 +0200
|
||||
|
||||
openttd (1.3.2~RC1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.2-RC1
|
||||
|
||||
-- OpenTTD <info@openttd.org> Sun, 30 Jun 2013 12:00:00 +0200
|
||||
|
||||
openttd (1.3.1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.1
|
||||
|
||||
-- OpenTTD <info@openttd.org> Sat, 01 Jun 2013 00:00:00 +0300
|
||||
|
||||
openttd (1.3.1~RC1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.1-RC1
|
||||
|
||||
-- OpenTTD <info@openttd.org> Fri, 17 May 2013 22:00:00 +0200
|
||||
|
||||
openttd (1.3.0-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.0
|
||||
|
||||
-- OpenTTD <info@openttd.org> Mon, 01 Apr 2013 00:00:00 +0200
|
||||
|
||||
openttd (1.3.0~RC3) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.0-RC3
|
||||
|
||||
-- OpenTTD <info@openttd.org> Mon, 18 Mar 2013 00:00:00 +0100
|
||||
|
||||
openttd (1.3.0~RC2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.0-RC2
|
||||
|
||||
-- OpenTTD <info@openttd.org> Tue, 05 Mar 2013 00:00:00 +0100
|
||||
|
||||
openttd (1.3.0~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.0-RC1
|
||||
|
||||
-- OpenTTD <info@openttd.org> Tue, 19 Feb 2013 00:00:00 +0100
|
||||
|
||||
openttd (1.3.0~beta2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.0-beta2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 07 Feb 2013 00:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Thu, 07 Feb 2013 00:00:00 +0100
|
||||
|
||||
openttd (1.3.0-beta1) unstable; urgency=low
|
||||
openttd (1.3.0~beta1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.3.0-beta1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 24 Dec 2012 00:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Mon, 24 Dec 2012 00:00:00 +0100
|
||||
|
||||
openttd (1.2.3) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.3
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 01 Nov 2012 00:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Thu, 01 Nov 2012 00:00:00 +0200
|
||||
|
||||
openttd (1.2.3~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.3-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 17 Oct 2012 00:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Wed, 17 Oct 2012 00:00:00 +0200
|
||||
|
||||
openttd (1.2.2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 16 Aug 2012 20:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Thu, 16 Aug 2012 20:00:00 +0200
|
||||
|
||||
openttd (1.2.2~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.2-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 01 Aug 2012 00:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Wed, 01 Aug 2012 00:00:00 +0200
|
||||
|
||||
openttd (1.2.1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 01 Jun 2012 00:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Fri, 01 Jun 2012 00:00:00 +0200
|
||||
|
||||
openttd (1.2.1~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.1-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 16 Apr 2012 22:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Wed, 16 Apr 2012 22:00:00 +0200
|
||||
|
||||
openttd (1.2.0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 15 Apr 2012 14:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sun, 15 Apr 2012 14:00:00 +0200
|
||||
|
||||
openttd (1.2.0~RC4) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-RC4
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 01 Apr 2012 00:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sun, 01 Apr 2012 00:00:00 +0200
|
||||
|
||||
openttd (1.2.0~RC3) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-RC3
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 18 Mar 2012 18:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sun, 18 Mar 2012 18:00:00 +0100
|
||||
|
||||
openttd (1.2.0~RC2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-RC2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 04 Mar 2012 18:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sun, 04 Mar 2012 18:00:00 +0100
|
||||
|
||||
openttd (1.2.0~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 19 Feb 2012 23:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sun, 19 Feb 2012 23:00:00 +0100
|
||||
|
||||
openttd (1.2.0~beta4) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-beta4
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 04 Feb 2012 16:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sat, 04 Feb 2012 16:00:00 +0100
|
||||
|
||||
openttd (1.2.0~beta3) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-beta3
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 21 Jan 2012 16:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sat, 21 Jan 2012 16:00:00 +0100
|
||||
|
||||
openttd (1.2.0~beta2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-beta2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 07 Jan 2012 00:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sat, 07 Jan 2012 00:00:00 +0100
|
||||
|
||||
openttd (1.2.0~beta1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.2.0-beta1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 24 Dec 2011 00:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sat, 24 Dec 2011 00:00:00 +0100
|
||||
|
||||
openttd (1.1.4) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.4
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 05 Dec 2011 00:00:00 +0400
|
||||
-- OpenTTD <info@openttd.org> Mon, 05 Dec 2011 00:00:00 +0400
|
||||
|
||||
openttd (1.1.4-RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.4-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 20 Nov 2011 17:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sun, 20 Nov 2011 17:00:00 +0100
|
||||
|
||||
openttd (1.1.3) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.3
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 15 Sep 2011 21:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Thu, 15 Sep 2011 21:00:00 +0200
|
||||
|
||||
openttd (1.1.3-RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.3-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 04 Sep 2011 17:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sun, 04 Sep 2011 17:00:00 +0200
|
||||
|
||||
openttd (1.1.2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 14 Aug 2011 17:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sun, 14 Aug 2011 17:00:00 +0200
|
||||
|
||||
openttd (1.1.2~RC2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.2-RC2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 30 Jul 2011 21:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sat, 30 Jul 2011 21:00:00 +0200
|
||||
|
||||
openttd (1.1.2~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.2-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 24 Jul 2011 21:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sun, 24 Jul 2011 21:00:00 +0200
|
||||
|
||||
openttd (1.1.1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 01 Jun 2011 00:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Wed, 01 Jun 2011 00:00:00 +0200
|
||||
|
||||
openttd (1.1.1~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.1-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 15 May 2011 21:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sun, 15 May 2011 21:00:00 +0200
|
||||
|
||||
openttd (1.1.0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 01 Apr 2011 00:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 01 Apr 2011 00:00:00 +0100
|
||||
|
||||
openttd (1.1.0~RC3) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-RC3
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 18 Mar 2011 22:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 18 Mar 2011 22:00:00 +0100
|
||||
|
||||
openttd (1.1.0~RC2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-RC2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 04 Mar 2011 22:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 04 Mar 2011 22:00:00 +0100
|
||||
|
||||
openttd (1.1.0~RC1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 18 Feb 2011 22:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 18 Feb 2011 22:00:00 +0100
|
||||
|
||||
openttd (1.1.0~beta5) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-beta5
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 04 Feb 2011 22:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 04 Feb 2011 22:00:00 +0100
|
||||
|
||||
openttd (1.1.0~beta4) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-beta4
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 21 Jan 2011 00:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 21 Jan 2011 00:00:00 +0100
|
||||
|
||||
openttd (1.1.0~beta3) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-beta3
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 09 Jan 2011 18:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Sun, 09 Jan 2011 18:00:00 +0100
|
||||
|
||||
openttd (1.1.0~beta2) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-beta2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 31 Dec 2010 18:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 31 Dec 2010 18:00:00 +0100
|
||||
|
||||
openttd (1.1.0~beta1) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.1.0-beta1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 24 Dec 2010 00:00:00 +0100
|
||||
-- OpenTTD <info@openttd.org> Fri, 24 Dec 2010 00:00:00 +0100
|
||||
|
||||
openttd (1.0.5-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.5
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 20 Nov 2010 21:00:00 +0000
|
||||
-- OpenTTD <info@openttd.org> Sat, 20 Nov 2010 21:00:00 +0000
|
||||
|
||||
openttd (1.0.5~rc2-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.5~rc2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 14 Nov 2010 15:00:00 +0000
|
||||
-- OpenTTD <info@openttd.org> Sun, 14 Nov 2010 15:00:00 +0000
|
||||
|
||||
openttd (1.0.5~rc1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.5-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 31 Oct 2010 15:00:00 +0000
|
||||
-- OpenTTD <info@openttd.org> Sun, 31 Oct 2010 15:00:00 +0000
|
||||
|
||||
openttd (1.0.4-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.4
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 14 Sep 2010 20:00:00 +0000
|
||||
-- OpenTTD <info@openttd.org> Tue, 14 Sep 2010 20:00:00 +0000
|
||||
|
||||
openttd (1.0.4~rc1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.4-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 30 Aug 2010 20:00:00 +0000
|
||||
-- OpenTTD <info@openttd.org> Mon, 30 Aug 2010 20:00:00 +0000
|
||||
|
||||
openttd (1.0.3-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.3
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 01 Aug 2010 00:00:00 +0000
|
||||
-- OpenTTD <info@openttd.org> Sun, 01 Aug 2010 00:00:00 +0000
|
||||
|
||||
openttd (1.0.3~rc1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.3-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 05 Jul 2010 17:37:21 +0000
|
||||
-- OpenTTD <info@openttd.org> Sat, 05 Jul 2010 17:37:21 +0000
|
||||
|
||||
openttd (1.0.2-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 19 Jun 2010 18:36:21 +0000
|
||||
-- OpenTTD <info@openttd.org> Sat, 19 Jun 2010 18:36:21 +0000
|
||||
|
||||
openttd (1.0.2~rc1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.2-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 05 Jun 2010 23:36:21 +0000
|
||||
-- OpenTTD <info@openttd.org> Sat, 05 Jun 2010 23:36:21 +0000
|
||||
|
||||
openttd (1.0.1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 01 May 2010 00:00:00 +0200
|
||||
-- OpenTTD <info@openttd.org> Sat, 01 May 2010 00:00:00 +0200
|
||||
|
||||
openttd (1.0.1~rc2-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.1-RC2
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 21 Apr 2010 21:36:21 +0200
|
||||
-- OpenTTD <info@openttd.org> Wed, 21 Apr 2010 21:36:21 +0200
|
||||
|
||||
openttd (1.0.1~rc1-0) unstable; urgency=low
|
||||
|
||||
* New upstream release 1.0.1-RC1
|
||||
|
||||
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 17 Apr 2010 23:36:21 +0000
|
||||
-- OpenTTD <info@openttd.org> Sat, 17 Apr 2010 23:36:21 +0000
|
||||
|
||||
openttd (1.0.0-1) unstable; urgency=low
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
@echo off
|
||||
|
||||
set OPENTTD_VERSION=1.3.0-beta2
|
||||
set OPENTTD_VERSION=1.3.2-RC2
|
||||
set OPENSFX_VERSION=0.8.0
|
||||
set NOSOUND_VERSION=0.8.0
|
||||
set OPENGFX_VERSION=1.2.0
|
||||
|
@@ -1,9 +1,9 @@
|
||||
# Version numbers to update
|
||||
!define APPV_MAJOR 1
|
||||
!define APPV_MINOR 3
|
||||
!define APPV_MAINT 0
|
||||
!define APPV_MAINT 2
|
||||
!define APPV_BUILD 1
|
||||
!define APPV_EXTRA "-beta2"
|
||||
!define APPV_EXTRA "-RC2"
|
||||
|
||||
!define APPNAME "OpenTTD" ; Define application name
|
||||
!define APPVERSION "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}${APPV_EXTRA}" ; Define application version
|
||||
|
@@ -137,6 +137,12 @@
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs)</AdditionalInputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\lang\estonian.lng;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\faroese.txt">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating faroese language file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs)</AdditionalInputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\lang\faroese.lng;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\finnish.txt">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating finnish language file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)"</Command>
|
||||
@@ -149,6 +155,12 @@
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs)</AdditionalInputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\lang\french.lng;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\gaelic.txt">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating gaelic language file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs)</AdditionalInputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\lang\gaelic.lng;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\galician.txt">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating galician language file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)"</Command>
|
||||
@@ -311,6 +323,18 @@
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs)</AdditionalInputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\lang\swedish.lng;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\tamil.txt">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating tamil language file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs)</AdditionalInputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\lang\tamil.lng;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\thai.txt">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating thai language file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\src\lang\english.txt;..\objs\strgen\strgen.exe;%(AdditionalInputs)</AdditionalInputs>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\lang\thai.lng;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\traditional_chinese.txt">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating traditional_chinese language file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "%(FullPath)"</Command>
|
||||
|
@@ -52,12 +52,18 @@
|
||||
<CustomBuild Include="..\src\lang\estonian.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\faroese.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\finnish.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\french.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\gaelic.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\galician.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
@@ -139,6 +145,12 @@
|
||||
<CustomBuild Include="..\src\lang\swedish.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\tamil.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\thai.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\src\lang\traditional_chinese.txt">
|
||||
<Filter>Translations</Filter>
|
||||
</CustomBuild>
|
||||
|
@@ -288,6 +288,21 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\faroese.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating faroese language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\faroese.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\finnish.txt"
|
||||
>
|
||||
@@ -318,6 +333,21 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\gaelic.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating gaelic language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\gaelic.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\galician.txt"
|
||||
>
|
||||
@@ -723,6 +753,36 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\tamil.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating tamil language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\tamil.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\thai.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating thai language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\thai.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\traditional_chinese.txt"
|
||||
>
|
||||
|
@@ -289,6 +289,21 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\faroese.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating faroese language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\faroese.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\finnish.txt"
|
||||
>
|
||||
@@ -319,6 +334,21 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\gaelic.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating gaelic language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\gaelic.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\galician.txt"
|
||||
>
|
||||
@@ -724,6 +754,36 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\tamil.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating tamil language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\tamil.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\thai.txt"
|
||||
>
|
||||
<FileConfiguration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Generating thai language file"
|
||||
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang "$(InputPath)"
exit 0
"
|
||||
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
|
||||
Outputs="..\bin\lang\thai.lng"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\src\lang\traditional_chinese.txt"
|
||||
>
|
||||
|
@@ -131,7 +131,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
@@ -176,7 +176,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>LIBCMT.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
@@ -233,7 +233,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
@@ -280,7 +280,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>LIBCMT.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
@@ -317,11 +317,13 @@
|
||||
<ClCompile Include="..\src\fileio.cpp" />
|
||||
<ClCompile Include="..\src\fios.cpp" />
|
||||
<ClCompile Include="..\src\fontcache.cpp" />
|
||||
<ClCompile Include="..\src\fontdetection.cpp" />
|
||||
<ClCompile Include="..\src\base_consist.cpp" />
|
||||
<ClCompile Include="..\src\gamelog.cpp" />
|
||||
<ClCompile Include="..\src\genworld.cpp" />
|
||||
<ClCompile Include="..\src\gfx.cpp" />
|
||||
<ClCompile Include="..\src\gfxinit.cpp" />
|
||||
<ClCompile Include="..\src\gfx_layout.cpp" />
|
||||
<ClCompile Include="..\src\goal.cpp" />
|
||||
<ClCompile Include="..\src\ground_vehicle.cpp" />
|
||||
<ClCompile Include="..\src\heightmap.cpp" />
|
||||
@@ -440,11 +442,13 @@
|
||||
<ClInclude Include="..\src\fileio_type.h" />
|
||||
<ClInclude Include="..\src\fios.h" />
|
||||
<ClInclude Include="..\src\fontcache.h" />
|
||||
<ClInclude Include="..\src\fontdetection.h" />
|
||||
<ClInclude Include="..\src\base_consist.h" />
|
||||
<ClInclude Include="..\src\gamelog.h" />
|
||||
<ClInclude Include="..\src\gamelog_internal.h" />
|
||||
<ClInclude Include="..\src\genworld.h" />
|
||||
<ClInclude Include="..\src\gfx_func.h" />
|
||||
<ClInclude Include="..\src\gfx_layout.h" />
|
||||
<ClInclude Include="..\src\gfx_type.h" />
|
||||
<ClInclude Include="..\src\gfxinit.h" />
|
||||
<ClInclude Include="..\src\goal_base.h" />
|
||||
|
@@ -180,6 +180,9 @@
|
||||
<ClCompile Include="..\src\fontcache.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\fontdetection.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\base_consist.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
@@ -195,6 +198,9 @@
|
||||
<ClCompile Include="..\src\gfxinit.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\gfx_layout.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\goal.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
@@ -549,6 +555,9 @@
|
||||
<ClInclude Include="..\src\fontcache.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\src\fontdetection.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\src\base_consist.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
@@ -564,6 +573,9 @@
|
||||
<ClInclude Include="..\src\gfx_func.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\src\gfx_layout.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\src\gfx_type.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
|
@@ -131,7 +131,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
@@ -176,7 +176,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>LIBCMT.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
@@ -233,7 +233,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
@@ -280,7 +280,7 @@
|
||||
<Culture>0x0809</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>winmm.lib;ws2_32.lib;libpng.lib;zlibstat.lib;lzo2.lib;liblzma.lib;libfreetype2.lib;icuuc.lib;icuin.lib;icudt.lib;icule.lib;iculx.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<IgnoreSpecificDefaultLibraries>LIBCMT.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
|
@@ -87,7 +87,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -184,7 +184,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -292,7 +292,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -392,7 +392,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -538,6 +538,10 @@
|
||||
RelativePath=".\..\src\fontcache.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\fontdetection.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_consist.cpp"
|
||||
>
|
||||
@@ -558,6 +562,10 @@
|
||||
RelativePath=".\..\src\gfxinit.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\gfx_layout.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\goal.cpp"
|
||||
>
|
||||
@@ -1034,6 +1042,10 @@
|
||||
RelativePath=".\..\src\fontcache.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\fontdetection.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_consist.h"
|
||||
>
|
||||
@@ -1054,6 +1066,10 @@
|
||||
RelativePath=".\..\src\gfx_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\gfx_layout.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\gfx_type.h"
|
||||
>
|
||||
|
@@ -87,7 +87,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -184,7 +184,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -292,7 +292,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -392,7 +392,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
|
@@ -88,7 +88,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -183,7 +183,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -290,7 +290,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -389,7 +389,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -535,6 +535,10 @@
|
||||
RelativePath=".\..\src\fontcache.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\fontdetection.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_consist.cpp"
|
||||
>
|
||||
@@ -555,6 +559,10 @@
|
||||
RelativePath=".\..\src\gfxinit.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\gfx_layout.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\goal.cpp"
|
||||
>
|
||||
@@ -1031,6 +1039,10 @@
|
||||
RelativePath=".\..\src\fontcache.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\fontdetection.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\base_consist.h"
|
||||
>
|
||||
@@ -1051,6 +1063,10 @@
|
||||
RelativePath=".\..\src\gfx_func.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\gfx_layout.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\..\src\gfx_type.h"
|
||||
>
|
||||
|
@@ -88,7 +88,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -183,7 +183,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
@@ -290,7 +290,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames=""
|
||||
@@ -389,7 +389,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib"
|
||||
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib liblzma.lib libfreetype2.lib icuuc.lib icuin.lib icudt.lib icule.lib iculx.lib"
|
||||
LinkIncremental="0"
|
||||
SuppressStartupBanner="true"
|
||||
IgnoreDefaultLibraryNames="LIBCMT.lib"
|
||||
|
50
readme.txt
50
readme.txt
@@ -1,6 +1,5 @@
|
||||
OpenTTD readme
|
||||
Last updated: 2013-02-07
|
||||
Release version: 1.3.0-beta2
|
||||
Last updated: 2013-07-14
|
||||
Release version: 1.3.2-RC2
|
||||
------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -22,6 +21,7 @@ Table of contents
|
||||
7.0) Compiling
|
||||
* 7.1) Required/optional libraries
|
||||
* 7.2) Supported compilers
|
||||
* 7.3) Compilation of base sets
|
||||
8.0) Translating
|
||||
* 8.1) Translation
|
||||
* 8.2) Previewing
|
||||
@@ -218,9 +218,9 @@ The Windows installer can optionally download and install these packages.
|
||||
4.1.2) Original Transport Tycoon Deluxe graphics and sound files
|
||||
------ ---------------------------------------------------------
|
||||
If you want to play with the original Transport Tycoon Deluxe data files you
|
||||
have to copy the data files from the CD-ROM into the data/ directory. It does
|
||||
not matter whether you copy them from the DOS or Windows version of Transport
|
||||
Tycoon Deluxe. The Windows install can optionally copy these files.
|
||||
have to copy the data files from the CD-ROM into the baseset/ directory. It
|
||||
does not matter whether you copy them from the DOS or Windows version of
|
||||
Transport Tycoon Deluxe. The Windows install can optionally copy these files.
|
||||
You need to copy the following files:
|
||||
- sample.cat
|
||||
- trg1r.grf or TRG1.GRF
|
||||
@@ -409,7 +409,6 @@ Information logged:
|
||||
original Transport Tycoon version
|
||||
* Running a modified OpenTTD build
|
||||
* Changing settings affecting NewGRF behaviour (non-network-safe settings)
|
||||
* Changing landscape (by cheat)
|
||||
* Triggering NewGRF bugs
|
||||
|
||||
No personal information is stored.
|
||||
@@ -501,21 +500,15 @@ open most older savegames or use the content downloading system.
|
||||
Without libSDL/liballegro on non-Windows and non-MacOS X machines you have
|
||||
no graphical user interface; you would be building a dedicated server.
|
||||
|
||||
To recompile the extra graphics needed to play with the original Transport
|
||||
Tycoon Deluxe graphics you need GRFCodec (which includes NFORenum) as well.
|
||||
GRFCodec can be found at: http://www.openttd.org/download-grfcodec
|
||||
The compilation of these extra graphics does generally not happen, unless
|
||||
you remove the graphics file using 'make maintainer-clean'.
|
||||
|
||||
7.2) Supported compilers
|
||||
---- -------------------
|
||||
The following compilers are known to compile OpenTTD:
|
||||
- Microsoft Visual C++ (MSVC) 2005, 2008 and 2010.
|
||||
Version 2005 gives bogus warnings about scoping issues.
|
||||
- GNU Compiler Collection (GCC) 3.3 - 4.7.
|
||||
- GNU Compiler Collection (GCC) 3.3 - 4.4, 4.6 - 4.8.
|
||||
Versions 4.1 and earlier give bogus warnings about uninitialised variables.
|
||||
Versions 4.4 - 4.6 give bogus warnings about freeing non-heap objects.
|
||||
Versions 4.5 and later give invalid warnings when lto is enabled.
|
||||
Versions 4.4, 4.6 give bogus warnings about freeing non-heap objects.
|
||||
Versions 4.6 and later give invalid warnings when lto is enabled.
|
||||
- Intel C++ Compiler (ICC) 12.0.
|
||||
- Clang/LLVM 2.9 - 3.0
|
||||
Version 2.9 gives bogus warnings about code nonconformity.
|
||||
@@ -524,6 +517,8 @@ The following compilers are known not to compile OpenTTD:
|
||||
- Microsoft Visual C++ (MSVC) 2003 and earlier.
|
||||
- GNU Compiler Collection (GCC) 3.2 and earlier.
|
||||
These old versions fail due to OpenTTD's template usage.
|
||||
- GNU Compiler Collection (GCC) 4.5. It optimizes enums too aggressively.
|
||||
See http://bugs.openttd.org/task/5513 and references therein.
|
||||
- Intel C++ Compiler (ICC) 11.1 and earlier.
|
||||
Version 10.0 and earlier fail a configure check and fail with recent system
|
||||
headers.
|
||||
@@ -535,6 +530,21 @@ The following compilers are known not to compile OpenTTD:
|
||||
If any of these compilers can compile OpenTTD again, please let us know.
|
||||
Patches to support more compilers are welcome.
|
||||
|
||||
7.3) Compilation of base sets
|
||||
-----------------------------
|
||||
To recompile the extra graphics needed to play with the original Transport
|
||||
Tycoon Deluxe graphics you need GRFCodec (which includes NFORenum) as well.
|
||||
GRFCodec can be found at: http://www.openttd.org/download-grfcodec
|
||||
The compilation of these extra graphics does generally not happen, unless
|
||||
you remove the graphics file using 'make maintainer-clean'.
|
||||
|
||||
Re-compilation of the base sets, thus also use of --maintainer-clean can
|
||||
leave the repository in a modified state as different grfcodec versions can
|
||||
cause binary differences in the resulting grf. Also translations might have
|
||||
been added for the base sets which are not yet included in the base set
|
||||
information files. Use the configure option --without-grfcodec to avoid
|
||||
modification of the base set files by the build process.
|
||||
|
||||
|
||||
8.0) Translating
|
||||
---- -----------
|
||||
@@ -572,10 +582,9 @@ Note: Do not alter the following parts of the file:
|
||||
8.2) Previewing
|
||||
---- ----------
|
||||
In order to view the translation in the game, you need to compile your language
|
||||
file with the strgen utility. You can download the precompiled strgen from:
|
||||
http://www.openttd.org/download-strgen
|
||||
To compile it yourself just take the normal OpenTTD sources and build that.
|
||||
During the build process the strgen utility will be made.
|
||||
file with the strgen utility. As this utility is tailored to a specific OpenTTD
|
||||
version, you need to compile it yourself. Just take the normal OpenTTD sources
|
||||
and build that. During the build process the strgen utility will be made.
|
||||
|
||||
strgen is a command-line utility. It takes the language filename as parameter.
|
||||
Example:
|
||||
@@ -640,6 +649,7 @@ 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
|
||||
|
@@ -25,11 +25,13 @@ engine.cpp
|
||||
fileio.cpp
|
||||
fios.cpp
|
||||
fontcache.cpp
|
||||
fontdetection.cpp
|
||||
base_consist.cpp
|
||||
gamelog.cpp
|
||||
genworld.cpp
|
||||
gfx.cpp
|
||||
gfxinit.cpp
|
||||
gfx_layout.cpp
|
||||
goal.cpp
|
||||
ground_vehicle.cpp
|
||||
heightmap.cpp
|
||||
@@ -173,11 +175,13 @@ fileio_func.h
|
||||
fileio_type.h
|
||||
fios.h
|
||||
fontcache.h
|
||||
fontdetection.h
|
||||
base_consist.h
|
||||
gamelog.h
|
||||
gamelog_internal.h
|
||||
genworld.h
|
||||
gfx_func.h
|
||||
gfx_layout.h
|
||||
gfx_type.h
|
||||
gfxinit.h
|
||||
goal_base.h
|
||||
|
6
src/3rdparty/squirrel/squirrel/squtils.h
vendored
6
src/3rdparty/squirrel/squirrel/squtils.h
vendored
@@ -37,9 +37,13 @@ public:
|
||||
~sqvector()
|
||||
{
|
||||
if(_allocated) {
|
||||
/* Break freeing loops, if this vector (indirectly) links to itself. */
|
||||
size_t allocated_size = _allocated * sizeof(T);
|
||||
_allocated = 0;
|
||||
|
||||
for(SQUnsignedInteger i = 0; i < _size; i++)
|
||||
_vals[i].~T();
|
||||
SQ_FREE(_vals, (_allocated * sizeof(T)));
|
||||
SQ_FREE(_vals, allocated_size);
|
||||
}
|
||||
}
|
||||
void reserve(SQUnsignedInteger newsize) { _realloc(newsize); }
|
||||
|
1
src/3rdparty/squirrel/squirrel/sqvm.cpp
vendored
1
src/3rdparty/squirrel/squirrel/sqvm.cpp
vendored
@@ -107,6 +107,7 @@ SQVM::SQVM(SQSharedState *ss)
|
||||
_errorhandler = _null_;
|
||||
_debughook = _null_;
|
||||
_can_suspend = false;
|
||||
_in_stackoverflow = false;
|
||||
_ops_till_suspend = 0;
|
||||
ci = NULL;
|
||||
INIT_CHAIN();ADD_TO_CHAIN(&_ss(this)->_gc_chain,this);
|
||||
|
5
src/3rdparty/squirrel/squirrel/sqvm.h
vendored
5
src/3rdparty/squirrel/squirrel/sqvm.h
vendored
@@ -170,6 +170,7 @@ public:
|
||||
|
||||
SQBool _can_suspend;
|
||||
SQInteger _ops_till_suspend;
|
||||
SQBool _in_stackoverflow;
|
||||
|
||||
bool ShouldSuspend()
|
||||
{
|
||||
@@ -200,8 +201,10 @@ inline SQObjectPtr &stack_get(HSQUIRRELVM v,SQInteger idx){return ((idx>=0)?(v->
|
||||
|
||||
#define PUSH_CALLINFO(v,nci){ \
|
||||
if(v->_callsstacksize == v->_alloccallsstacksize) { \
|
||||
if (v->_callsstacksize > 65535) {\
|
||||
if (v->_callsstacksize > 65535 && !v->_in_stackoverflow) {\
|
||||
v->_in_stackoverflow = true; \
|
||||
v->Raise_Error(_SC("stack overflow"));\
|
||||
v->CallErrorHandler(v->_lasterror);\
|
||||
return false;\
|
||||
}\
|
||||
v->GrowCallStack(); \
|
||||
|
@@ -47,6 +47,7 @@
|
||||
/* Load default data and store the name in the settings */
|
||||
config->Change(info->GetName(), -1, false, true);
|
||||
}
|
||||
config->AnchorUnchangeableSettings();
|
||||
|
||||
Backup<CompanyByte> cur_company(_current_company, company, FILE_LINE);
|
||||
Company *c = Company::Get(company);
|
||||
|
@@ -1000,6 +1000,43 @@ struct AIDebugWindow : public Window {
|
||||
return !Company::IsValidAiID(ai_debug_company) || Company::Get(ai_debug_company)->ai_instance->IsDead();
|
||||
}
|
||||
|
||||
/**
|
||||
* Check whether a company is a valid AI company or GS.
|
||||
* @param company Company to check for validity.
|
||||
* @return true if company is valid for debugging.
|
||||
*/
|
||||
bool IsValidDebugCompany(CompanyID company) const
|
||||
{
|
||||
switch (company) {
|
||||
case INVALID_COMPANY: return false;
|
||||
case OWNER_DEITY: return Game::GetInstance() != NULL;
|
||||
default: return Company::IsValidAiID(company);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Ensure that \c ai_debug_company refers to a valid AI company or GS, or is set to #INVALID_COMPANY.
|
||||
* If no valid company is selected, it selects the first valid AI or GS if any.
|
||||
*/
|
||||
void SelectValidDebugCompany()
|
||||
{
|
||||
/* Check if the currently selected company is still active. */
|
||||
if (this->IsValidDebugCompany(ai_debug_company)) return;
|
||||
|
||||
ai_debug_company = INVALID_COMPANY;
|
||||
|
||||
const Company *c;
|
||||
FOR_ALL_COMPANIES(c) {
|
||||
if (c->is_ai) {
|
||||
ChangeToAI(c->index);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/* If no AI is available, see if there is a game script. */
|
||||
if (Game::GetInstance() != NULL) ChangeToAI(OWNER_DEITY);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructor for the window.
|
||||
* @param desc The description of the window.
|
||||
@@ -1014,14 +1051,6 @@ struct AIDebugWindow : public Window {
|
||||
this->FinishInitNested(desc, number);
|
||||
|
||||
if (!this->show_break_box) break_check_enabled = false;
|
||||
/* Disable the companies who are not active or not an AI */
|
||||
for (CompanyID i = COMPANY_FIRST; i < MAX_COMPANIES; i++) {
|
||||
this->SetWidgetDisabledState(i + WID_AID_COMPANY_BUTTON_START, !Company::IsValidAiID(i));
|
||||
}
|
||||
this->EnableWidget(WID_AID_SCRIPT_GAME);
|
||||
this->DisableWidget(WID_AID_RELOAD_TOGGLE);
|
||||
this->DisableWidget(WID_AID_SETTINGS);
|
||||
this->DisableWidget(WID_AID_CONTINUE_BTN);
|
||||
|
||||
this->last_vscroll_pos = 0;
|
||||
this->autoscroll = true;
|
||||
@@ -1032,17 +1061,8 @@ struct AIDebugWindow : public Window {
|
||||
/* Restore the break string value from static variable */
|
||||
this->break_editbox.text.Assign(this->break_string);
|
||||
|
||||
/* Restore button state from static class variables */
|
||||
if (ai_debug_company == OWNER_DEITY) {
|
||||
this->LowerWidget(WID_AID_SCRIPT_GAME);
|
||||
this->SetWidgetDisabledState(WID_AID_CONTINUE_BTN, !Game::IsPaused());
|
||||
} else if (ai_debug_company != INVALID_COMPANY) {
|
||||
this->LowerWidget(ai_debug_company + WID_AID_COMPANY_BUTTON_START);
|
||||
this->SetWidgetDisabledState(WID_AID_CONTINUE_BTN, !AI::IsPaused(ai_debug_company));
|
||||
}
|
||||
this->SetWidgetLoweredState(WID_AID_BREAK_STR_ON_OFF_BTN, this->break_check_enabled);
|
||||
this->SetWidgetLoweredState(WID_AID_MATCH_CASE_BTN, this->case_sensitive_break_check);
|
||||
|
||||
this->SelectValidDebugCompany();
|
||||
this->InvalidateData(-1);
|
||||
}
|
||||
|
||||
virtual void UpdateWidgetSize(int widget, Dimension *size, const Dimension &padding, Dimension *fill, Dimension *resize)
|
||||
@@ -1055,67 +1075,31 @@ struct AIDebugWindow : public Window {
|
||||
|
||||
virtual void OnPaint()
|
||||
{
|
||||
/* Check if the currently selected company is still active. */
|
||||
if (ai_debug_company == INVALID_COMPANY || (ai_debug_company != OWNER_DEITY && !Company::IsValidAiID(ai_debug_company))) {
|
||||
if (ai_debug_company != INVALID_COMPANY) {
|
||||
/* Raise the widget for the previous selection. */
|
||||
this->RaiseWidget(ai_debug_company + WID_AID_COMPANY_BUTTON_START);
|
||||
|
||||
ai_debug_company = INVALID_COMPANY;
|
||||
}
|
||||
|
||||
const Company *c;
|
||||
FOR_ALL_COMPANIES(c) {
|
||||
if (c->is_ai) {
|
||||
/* Lower the widget corresponding to this company. */
|
||||
this->LowerWidget(c->index + WID_AID_COMPANY_BUTTON_START);
|
||||
|
||||
ai_debug_company = c->index;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* If no AI is available, see if there is a game script. */
|
||||
if (ai_debug_company == INVALID_COMPANY && Game::GetInstance() != NULL) {
|
||||
/* Lower the widget corresponding to the game script. */
|
||||
this->LowerWidget(WID_AID_SCRIPT_GAME);
|
||||
|
||||
ai_debug_company = OWNER_DEITY;
|
||||
}
|
||||
}
|
||||
|
||||
/* Update "Reload AI" and "AI settings" buttons */
|
||||
this->SetWidgetDisabledState(WID_AID_SETTINGS, ai_debug_company == INVALID_COMPANY);
|
||||
this->SetWidgetDisabledState(WID_AID_RELOAD_TOGGLE, ai_debug_company == INVALID_COMPANY || ai_debug_company == OWNER_DEITY);
|
||||
this->SetWidgetDisabledState(WID_AID_SCRIPT_GAME, Game::GetGameInstance() == NULL);
|
||||
this->SelectValidDebugCompany();
|
||||
|
||||
/* Draw standard stuff */
|
||||
this->DrawWidgets();
|
||||
|
||||
if (this->IsShaded()) return; // Don't draw anything when the window is shaded.
|
||||
|
||||
bool dirty = false;
|
||||
|
||||
/* Paint the company icons */
|
||||
for (CompanyID i = COMPANY_FIRST; i < MAX_COMPANIES; i++) {
|
||||
NWidgetCore *button = this->GetWidget<NWidgetCore>(i + WID_AID_COMPANY_BUTTON_START);
|
||||
bool dirty = false;
|
||||
|
||||
bool valid = Company::IsValidAiID(i);
|
||||
bool disabled = !valid;
|
||||
if (button->IsDisabled() != disabled) {
|
||||
/* Invalid/non-AI companies have button disabled */
|
||||
button->SetDisabled(disabled);
|
||||
dirty = true;
|
||||
}
|
||||
|
||||
/* Check whether the validity of the company changed */
|
||||
dirty |= (button->IsDisabled() == valid);
|
||||
|
||||
/* Mark dead/paused AIs by setting the background colour. */
|
||||
bool dead = valid && Company::Get(i)->ai_instance->IsDead();
|
||||
bool paused = valid && Company::Get(i)->ai_instance->IsPaused();
|
||||
/* Re-paint if the button was updated.
|
||||
* (note that it is intentional that SetScriptButtonColour is always called) */
|
||||
dirty = SetScriptButtonColour(*button, dead, paused) || dirty;
|
||||
dirty |= SetScriptButtonColour(*button, dead, paused);
|
||||
|
||||
/* Do we need a repaint? */
|
||||
if (dirty) this->SetDirty();
|
||||
/* Draw company icon only for valid AI companies */
|
||||
if (!valid) continue;
|
||||
|
||||
@@ -1125,13 +1109,14 @@ struct AIDebugWindow : public Window {
|
||||
|
||||
/* Set button colour for Game Script. */
|
||||
GameInstance *game = Game::GetInstance();
|
||||
bool dead = game != NULL && game->IsDead();
|
||||
bool paused = game != NULL && game->IsPaused();
|
||||
bool valid = game != NULL;
|
||||
bool dead = valid && game->IsDead();
|
||||
bool paused = valid && game->IsPaused();
|
||||
|
||||
NWidgetCore *button = this->GetWidget<NWidgetCore>(WID_AID_SCRIPT_GAME);
|
||||
if (SetScriptButtonColour(*button, dead, paused)) {
|
||||
/* Re-paint if the button was updated. */
|
||||
this->SetWidgetDirty(WID_AID_SCRIPT_GAME);
|
||||
}
|
||||
dirty |= (button->IsDisabled() == valid) || SetScriptButtonColour(*button, dead, paused);
|
||||
|
||||
if (dirty) this->InvalidateData(-1);
|
||||
|
||||
/* If there are no active companies, don't display anything else. */
|
||||
if (ai_debug_company == INVALID_COMPANY) return;
|
||||
@@ -1233,30 +1218,19 @@ struct AIDebugWindow : public Window {
|
||||
*/
|
||||
void ChangeToAI(CompanyID show_ai)
|
||||
{
|
||||
if (ai_debug_company == OWNER_DEITY) {
|
||||
this->RaiseWidget(WID_AID_SCRIPT_GAME);
|
||||
} else {
|
||||
this->RaiseWidget(ai_debug_company + WID_AID_COMPANY_BUTTON_START);
|
||||
}
|
||||
if (!this->IsValidDebugCompany(show_ai)) return;
|
||||
|
||||
ai_debug_company = show_ai;
|
||||
|
||||
ScriptLog::LogData *log = this->GetLogPointer();
|
||||
this->vscroll->SetCount((log == NULL) ? 0 : log->used);
|
||||
|
||||
if (ai_debug_company == OWNER_DEITY) {
|
||||
this->LowerWidget(WID_AID_SCRIPT_GAME);
|
||||
this->SetWidgetDisabledState(WID_AID_CONTINUE_BTN, !Game::IsPaused());
|
||||
} else {
|
||||
this->LowerWidget(ai_debug_company + WID_AID_COMPANY_BUTTON_START);
|
||||
this->SetWidgetDisabledState(WID_AID_CONTINUE_BTN, !AI::IsPaused(ai_debug_company));
|
||||
}
|
||||
|
||||
this->highlight_row = -1; // The highlight of one AI make little sense for another AI.
|
||||
this->autoscroll = true;
|
||||
this->last_vscroll_pos = this->vscroll->GetPosition();
|
||||
this->SetDirty();
|
||||
|
||||
/* Close AI settings window to prevent confusion */
|
||||
DeleteWindowByClass(WC_AI_SETTINGS);
|
||||
|
||||
this->InvalidateData(-1);
|
||||
|
||||
this->autoscroll = true;
|
||||
this->last_vscroll_pos = this->vscroll->GetPosition();
|
||||
}
|
||||
|
||||
virtual void OnClick(Point pt, int widget, int click_count)
|
||||
@@ -1287,25 +1261,21 @@ struct AIDebugWindow : public Window {
|
||||
|
||||
case WID_AID_BREAK_STR_ON_OFF_BTN:
|
||||
this->break_check_enabled = !this->break_check_enabled;
|
||||
this->SetWidgetLoweredState(WID_AID_BREAK_STR_ON_OFF_BTN, this->break_check_enabled);
|
||||
this->SetWidgetDirty(WID_AID_BREAK_STR_ON_OFF_BTN);
|
||||
this->InvalidateData(-1);
|
||||
break;
|
||||
|
||||
case WID_AID_MATCH_CASE_BTN:
|
||||
this->case_sensitive_break_check = !this->case_sensitive_break_check;
|
||||
this->SetWidgetLoweredState(WID_AID_MATCH_CASE_BTN, this->case_sensitive_break_check);
|
||||
this->SetWidgetDirty(WID_AID_MATCH_CASE_BTN);
|
||||
this->InvalidateData(-1);
|
||||
break;
|
||||
|
||||
case WID_AID_CONTINUE_BTN:
|
||||
/* Unpause current AI / game script and mark the corresponding script button dirty. */
|
||||
if (!IsDead()) {
|
||||
if (!this->IsDead()) {
|
||||
if (ai_debug_company == OWNER_DEITY) {
|
||||
Game::Unpause();
|
||||
this->SetWidgetDirty(WID_AID_SCRIPT_GAME);
|
||||
} else {
|
||||
AI::Unpause(ai_debug_company);
|
||||
this->SetWidgetDirty(WID_AID_COMPANY_BUTTON_START + ai_debug_company);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1328,8 +1298,7 @@ struct AIDebugWindow : public Window {
|
||||
}
|
||||
|
||||
this->highlight_row = -1;
|
||||
this->SetWidgetDirty(WID_AID_LOG_PANEL);
|
||||
this->DisableWidget(WID_AID_CONTINUE_BTN);
|
||||
this->InvalidateData(-1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -1363,15 +1332,14 @@ struct AIDebugWindow : public Window {
|
||||
/**
|
||||
* Some data on this window has become invalid.
|
||||
* @param data Information about the changed data.
|
||||
* This is the company ID of the AI/GS which wrote a new log message, or -1 in other cases.
|
||||
* @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 (data == -1 || ai_debug_company == data) this->SetDirty();
|
||||
|
||||
/* If the log message is related to the active company tab, check the break string.
|
||||
* This needs to be done in gameloop-scope, so the AI is suspended immediately. */
|
||||
if (!gui_scope && data == ai_debug_company && this->break_check_enabled && !this->break_string_filter.IsEmpty()) {
|
||||
if (!gui_scope && data == ai_debug_company && this->IsValidDebugCompany(ai_debug_company) && this->break_check_enabled && !this->break_string_filter.IsEmpty()) {
|
||||
/* Get the log instance of the active company */
|
||||
ScriptLog::LogData *log = this->GetLogPointer();
|
||||
|
||||
@@ -1380,7 +1348,7 @@ struct AIDebugWindow : public Window {
|
||||
this->break_string_filter.AddLine(log->lines[log->pos]);
|
||||
if (this->break_string_filter.GetState()) {
|
||||
/* Pause execution of script. */
|
||||
if (!IsDead()) {
|
||||
if (!this->IsDead()) {
|
||||
if (ai_debug_company == OWNER_DEITY) {
|
||||
Game::Pause();
|
||||
} else {
|
||||
@@ -1393,15 +1361,35 @@ struct AIDebugWindow : public Window {
|
||||
DoCommandP(0, PM_PAUSED_NORMAL, 1, CMD_PAUSE);
|
||||
}
|
||||
|
||||
/* Make it possible to click on the continue button */
|
||||
this->EnableWidget(WID_AID_CONTINUE_BTN);
|
||||
this->SetWidgetDirty(WID_AID_CONTINUE_BTN);
|
||||
|
||||
/* Highlight row that matched */
|
||||
this->highlight_row = log->pos;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!gui_scope) return;
|
||||
|
||||
this->SelectValidDebugCompany();
|
||||
|
||||
ScriptLog::LogData *log = ai_debug_company != INVALID_COMPANY ? this->GetLogPointer() : NULL;
|
||||
this->vscroll->SetCount((log == NULL) ? 0 : log->used);
|
||||
|
||||
/* Update company buttons */
|
||||
for (CompanyID i = COMPANY_FIRST; i < MAX_COMPANIES; i++) {
|
||||
this->SetWidgetDisabledState(i + WID_AID_COMPANY_BUTTON_START, !Company::IsValidAiID(i));
|
||||
this->SetWidgetLoweredState(i + WID_AID_COMPANY_BUTTON_START, ai_debug_company == i);
|
||||
}
|
||||
|
||||
this->SetWidgetDisabledState(WID_AID_SCRIPT_GAME, Game::GetGameInstance() == NULL);
|
||||
this->SetWidgetLoweredState(WID_AID_SCRIPT_GAME, ai_debug_company == OWNER_DEITY);
|
||||
|
||||
this->SetWidgetLoweredState(WID_AID_BREAK_STR_ON_OFF_BTN, this->break_check_enabled);
|
||||
this->SetWidgetLoweredState(WID_AID_MATCH_CASE_BTN, this->case_sensitive_break_check);
|
||||
|
||||
this->SetWidgetDisabledState(WID_AID_SETTINGS, ai_debug_company == INVALID_COMPANY);
|
||||
this->SetWidgetDisabledState(WID_AID_RELOAD_TOGGLE, ai_debug_company == INVALID_COMPANY || ai_debug_company == OWNER_DEITY);
|
||||
this->SetWidgetDisabledState(WID_AID_CONTINUE_BTN, ai_debug_company == INVALID_COMPANY ||
|
||||
(ai_debug_company == OWNER_DEITY ? !Game::IsPaused() : !AI::IsPaused(ai_debug_company)));
|
||||
}
|
||||
|
||||
virtual void OnResize()
|
||||
|
@@ -238,8 +238,17 @@ ScriptInfo *AIInstance::FindLibrary(const char *library, int version)
|
||||
*/
|
||||
void CcAI(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
|
||||
{
|
||||
Company::Get(_current_company)->ai_instance->DoCommandCallback(result, tile, p1, p2);
|
||||
Company::Get(_current_company)->ai_instance->Continue();
|
||||
/*
|
||||
* The company might not exist anymore. Check for this.
|
||||
* The command checks are not useful since this callback
|
||||
* is also called when the command fails, which is does
|
||||
* when the company does not exist anymore.
|
||||
*/
|
||||
const Company *c = Company::GetIfValid(_current_company);
|
||||
if (c == NULL || c->ai_instance == NULL) return;
|
||||
|
||||
c->ai_instance->DoCommandCallback(result, tile, p1, p2);
|
||||
c->ai_instance->Continue();
|
||||
}
|
||||
|
||||
CommandCallback *AIInstance::GetDoCommandCallback()
|
||||
|
@@ -598,7 +598,14 @@ enum AircraftSpeedLimits {
|
||||
*/
|
||||
static int UpdateAircraftSpeed(Aircraft *v, uint speed_limit = SPEED_LIMIT_NONE, bool hard_limit = true)
|
||||
{
|
||||
uint spd = v->acceleration * 16;
|
||||
/**
|
||||
* 'acceleration' has the unit 3/8 mph/tick. This function is called twice per tick.
|
||||
* So the speed amount we need to accelerate is:
|
||||
* acceleration * 3 / 16 mph = acceleration * 3 / 16 * 16 / 10 km-ish/h
|
||||
* = acceleration * 3 / 10 * 256 * (km-ish/h / 256)
|
||||
* ~ acceleration * 77 (km-ish/h / 256)
|
||||
*/
|
||||
uint spd = v->acceleration * 77;
|
||||
byte t;
|
||||
|
||||
/* Adjust speed limits by plane speed factor to prevent taxiing
|
||||
@@ -1059,7 +1066,12 @@ static bool HandleCrashedAircraft(Aircraft *v)
|
||||
}
|
||||
|
||||
|
||||
static void HandleAircraftSmoke(Aircraft *v)
|
||||
/**
|
||||
* Handle smoke of broken aircraft.
|
||||
* @param v Aircraft
|
||||
* @param mode Is this the non-first call for this vehicle in this tick?
|
||||
*/
|
||||
static void HandleAircraftSmoke(Aircraft *v, bool mode)
|
||||
{
|
||||
static const struct {
|
||||
int8 x;
|
||||
@@ -1077,13 +1089,15 @@ static void HandleAircraftSmoke(Aircraft *v)
|
||||
|
||||
if (!(v->vehstatus & VS_AIRCRAFT_BROKEN)) return;
|
||||
|
||||
/* Stop smoking when landed */
|
||||
if (v->cur_speed < 10) {
|
||||
v->vehstatus &= ~VS_AIRCRAFT_BROKEN;
|
||||
v->breakdown_ctr = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
if ((v->tick_counter & 0x1F) == 0) {
|
||||
/* Spawn effect et most once per Tick, i.e. !mode */
|
||||
if (!mode && (v->tick_counter & 0x0F) == 0) {
|
||||
CreateEffectVehicleRel(v,
|
||||
smoke_pos[v->direction].x,
|
||||
smoke_pos[v->direction].y,
|
||||
@@ -1886,8 +1900,6 @@ static void AircraftHandleDestTooFar(Aircraft *v, bool too_far)
|
||||
|
||||
static bool AircraftEventHandler(Aircraft *v, int loop)
|
||||
{
|
||||
v->tick_counter++;
|
||||
|
||||
if (v->vehstatus & VS_CRASHED) {
|
||||
return HandleCrashedAircraft(v);
|
||||
}
|
||||
@@ -1896,7 +1908,7 @@ static bool AircraftEventHandler(Aircraft *v, int loop)
|
||||
|
||||
v->HandleBreakdown();
|
||||
|
||||
HandleAircraftSmoke(v);
|
||||
HandleAircraftSmoke(v, loop != 0);
|
||||
ProcessOrders(v);
|
||||
v->HandleLoading(loop != 0);
|
||||
|
||||
@@ -1926,6 +1938,8 @@ bool Aircraft::Tick()
|
||||
{
|
||||
if (!this->IsNormalAircraft()) return true;
|
||||
|
||||
this->tick_counter++;
|
||||
|
||||
if (!(this->vehstatus & VS_STOPPED)) this->running_ticks++;
|
||||
|
||||
if (this->subtype == AIR_HELICOPTER) HelicopterTickHandler(this);
|
||||
|
@@ -39,7 +39,7 @@ void DrawAircraftDetails(const Aircraft *v, int left, int right, int y)
|
||||
SetDParam(0, u->engine_type);
|
||||
SetDParam(1, u->build_year);
|
||||
SetDParam(2, u->value);
|
||||
DrawString(left, right, y, STR_VEHICLE_INFO_BUILT_VALUE, TC_FROMSTRING, SA_LEFT | SA_STRIP);
|
||||
DrawString(left, right, y, STR_VEHICLE_INFO_BUILT_VALUE);
|
||||
|
||||
SetDParam(0, u->cargo_type);
|
||||
SetDParam(1, u->cargo_cap);
|
||||
|
@@ -391,8 +391,10 @@ public:
|
||||
top = DrawStationCoverageAreaText(panel_nwi->pos_x + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, top, SCT_ALL, rad, true) + WD_PAR_VSEP_NORMAL;
|
||||
}
|
||||
|
||||
/* Resize background if the text is not equally long as the window. */
|
||||
if (top > bottom || (top < bottom && panel_nwi->current_y > panel_nwi->smallest_y)) {
|
||||
/* Resize background if the window is too small.
|
||||
* 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);
|
||||
}
|
||||
}
|
||||
|
@@ -13,6 +13,7 @@
|
||||
#include "engine_base.h"
|
||||
#include "engine_func.h"
|
||||
#include "station_base.h"
|
||||
#include "network/network.h"
|
||||
#include "articulated_vehicles.h"
|
||||
#include "textbuf_gui.h"
|
||||
#include "command_func.h"
|
||||
@@ -889,7 +890,7 @@ void DrawEngineList(VehicleType type, int l, int r, int y, const GUIEngineList *
|
||||
int count_width = 0;
|
||||
if (show_count) {
|
||||
replace_icon = GetSpriteSize(SPR_GROUP_REPLACE_ACTIVE);
|
||||
SetDParamMaxDigits(0, 3);
|
||||
SetDParamMaxDigits(0, 3, FS_SMALL);
|
||||
count_width = GetStringBoundingBox(STR_TINY_BLACK_COMA).width;
|
||||
}
|
||||
|
||||
@@ -909,7 +910,7 @@ void DrawEngineList(VehicleType type, int l, int r, int y, const GUIEngineList *
|
||||
const uint num_engines = GetGroupNumEngines(_local_company, selected_group, engine);
|
||||
|
||||
SetDParam(0, engine);
|
||||
DrawString(text_left, text_right, y + normal_text_y_offset, STR_ENGINE_NAME, engine == selected_id ? TC_WHITE : TC_BLACK, SA_STRIP | (rtl ? SA_RIGHT : SA_LEFT));
|
||||
DrawString(text_left, text_right, y + normal_text_y_offset, STR_ENGINE_NAME, engine == selected_id ? TC_WHITE : TC_BLACK, (rtl ? SA_RIGHT : SA_LEFT));
|
||||
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);
|
||||
@@ -970,6 +971,9 @@ struct BuildVehicleWindow : Window {
|
||||
* So we just hide it, and enlarge the Rename button by the now vacant place. */
|
||||
if (this->listview_mode) this->GetWidget<NWidgetStacked>(WID_BV_BUILD_SEL)->SetDisplayedPlane(SZSP_NONE);
|
||||
|
||||
/* disable renaming engines in network games if you are not the server */
|
||||
this->SetWidgetDisabledState(WID_BV_RENAME, _networking && !_network_server);
|
||||
|
||||
NWidgetCore *widget = this->GetWidget<NWidgetCore>(WID_BV_LIST);
|
||||
widget->tool_tip = STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP + type;
|
||||
|
||||
|
@@ -251,17 +251,17 @@ static const Command _command_proc_table[] = {
|
||||
|
||||
DEF_CMD(CmdWantEnginePreview, 0, CMDT_VEHICLE_MANAGEMENT ), // CMD_WANT_ENGINE_PREVIEW
|
||||
|
||||
DEF_CMD(CmdRenameVehicle, CMD_STR_CTRL, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_VEHICLE
|
||||
DEF_CMD(CmdRenameEngine, CMD_STR_CTRL, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_ENGINE
|
||||
DEF_CMD(CmdRenameVehicle, 0, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_VEHICLE
|
||||
DEF_CMD(CmdRenameEngine, CMD_SERVER, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_ENGINE
|
||||
|
||||
DEF_CMD(CmdRenameCompany, CMD_STR_CTRL, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_COMPANY
|
||||
DEF_CMD(CmdRenamePresident, CMD_STR_CTRL, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_PRESIDENT
|
||||
DEF_CMD(CmdRenameCompany, 0, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_COMPANY
|
||||
DEF_CMD(CmdRenamePresident, 0, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_PRESIDENT
|
||||
|
||||
DEF_CMD(CmdRenameStation, CMD_STR_CTRL, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_STATION
|
||||
DEF_CMD(CmdRenameDepot, CMD_STR_CTRL, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_DEPOT
|
||||
DEF_CMD(CmdRenameStation, 0, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_STATION
|
||||
DEF_CMD(CmdRenameDepot, 0, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_DEPOT
|
||||
|
||||
DEF_CMD(CmdPlaceSign, CMD_STR_CTRL | CMD_DEITY, CMDT_OTHER_MANAGEMENT ), // CMD_PLACE_SIGN
|
||||
DEF_CMD(CmdRenameSign, CMD_STR_CTRL | CMD_DEITY, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_SIGN
|
||||
DEF_CMD(CmdPlaceSign, CMD_DEITY, CMDT_OTHER_MANAGEMENT ), // CMD_PLACE_SIGN
|
||||
DEF_CMD(CmdRenameSign, CMD_DEITY, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_SIGN
|
||||
|
||||
DEF_CMD(CmdTurnRoadVeh, 0, CMDT_VEHICLE_MANAGEMENT ), // CMD_TURN_ROADVEH
|
||||
|
||||
@@ -272,7 +272,7 @@ static const Command _command_proc_table[] = {
|
||||
DEF_CMD(CmdBuyCompany, 0, CMDT_MONEY_MANAGEMENT ), // CMD_BUY_COMANY
|
||||
|
||||
DEF_CMD(CmdFoundTown, CMD_NO_TEST, CMDT_LANDSCAPE_CONSTRUCTION), // CMD_FOUND_TOWN; founding random town can fail only in exec run
|
||||
DEF_CMD(CmdRenameTown, CMD_STR_CTRL | CMD_SERVER, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_TOWN
|
||||
DEF_CMD(CmdRenameTown, CMD_SERVER, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_TOWN
|
||||
DEF_CMD(CmdDoTownAction, 0, CMDT_LANDSCAPE_CONSTRUCTION), // CMD_DO_TOWN_ACTION
|
||||
DEF_CMD(CmdTownCargoGoal, CMD_DEITY, CMDT_OTHER_MANAGEMENT ), // CMD_TOWN_CARGO_GOAL
|
||||
DEF_CMD(CmdTownGrowthRate, CMD_DEITY, CMDT_OTHER_MANAGEMENT ), // CMD_TOWN_GROWTH_RATE
|
||||
@@ -314,7 +314,7 @@ static const Command _command_proc_table[] = {
|
||||
DEF_CMD(CmdDepotMassAutoReplace, 0, CMDT_VEHICLE_CONSTRUCTION ), // CMD_DEPOT_MASS_AUTOREPLACE
|
||||
DEF_CMD(CmdCreateGroup, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_CREATE_GROUP
|
||||
DEF_CMD(CmdDeleteGroup, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_DELETE_GROUP
|
||||
DEF_CMD(CmdRenameGroup, CMD_STR_CTRL, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_GROUP
|
||||
DEF_CMD(CmdRenameGroup, 0, CMDT_OTHER_MANAGEMENT ), // CMD_RENAME_GROUP
|
||||
DEF_CMD(CmdAddVehicleGroup, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_ADD_VEHICLE_GROUP
|
||||
DEF_CMD(CmdAddSharedVehicleGroup, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_ADD_SHARE_VEHICLE_GROUP
|
||||
DEF_CMD(CmdRemoveAllVehiclesGroup, 0, CMDT_ROUTE_MANAGEMENT ), // CMD_REMOVE_ALL_VEHICLES_GROUP
|
||||
|
@@ -550,7 +550,7 @@ Company *DoStartupNewCompany(bool is_ai, CompanyID company = INVALID_COMPANY)
|
||||
c->avail_railtypes = GetCompanyRailtypes(c->index);
|
||||
c->avail_roadtypes = GetCompanyRoadtypes(c->index);
|
||||
c->inaugurated_year = _cur_year;
|
||||
RandomCompanyManagerFaceBits(c->face, (GenderEthnicity)Random(), false); // create a random company manager face
|
||||
RandomCompanyManagerFaceBits(c->face, (GenderEthnicity)Random(), false, false); // create a random company manager face
|
||||
|
||||
SetDefaultCompanySettings(c->index);
|
||||
|
||||
|
@@ -526,7 +526,7 @@ public:
|
||||
|
||||
uint Height(uint width) const
|
||||
{
|
||||
return max(FONT_HEIGHT_NORMAL, (byte)14);
|
||||
return max(FONT_HEIGHT_NORMAL, 14);
|
||||
}
|
||||
|
||||
bool Selectable() const
|
||||
|
@@ -201,12 +201,15 @@ static inline void ScaleAllCompanyManagerFaceBits(CompanyManagerFace &cmf)
|
||||
* @param cmf the company manager's face to write the bits to
|
||||
* @param ge the gender and ethnicity of the old company manager's face
|
||||
* @param adv if it for the advanced company manager's face window
|
||||
* @param interactive is the call from within the user interface?
|
||||
*
|
||||
* @pre scale 'ge' to a valid gender/ethnicity combination
|
||||
*/
|
||||
static inline void RandomCompanyManagerFaceBits(CompanyManagerFace &cmf, GenderEthnicity ge, bool adv)
|
||||
static inline void RandomCompanyManagerFaceBits(CompanyManagerFace &cmf, GenderEthnicity ge, bool adv, bool interactive = true)
|
||||
{
|
||||
cmf = InteractiveRandom(); // random all company manager's face bits
|
||||
/* This method is called from a command when not interactive and
|
||||
* then we must use Random to get the same result on all clients. */
|
||||
cmf = interactive ? InteractiveRandom() : Random(); // random all company manager's face bits
|
||||
|
||||
/* scale ge: 0 == GE_WM, 1 == GE_WF, 2 == GE_BM, 3 == GE_BF (and maybe in future: ...) */
|
||||
ge = (GenderEthnicity)((uint)ge % GE_END);
|
||||
|
@@ -600,7 +600,7 @@ struct DepotWindow : Window {
|
||||
uint min_height = 0;
|
||||
|
||||
if (this->type == VEH_TRAIN) {
|
||||
SetDParamMaxValue(0, 1000);
|
||||
SetDParamMaxValue(0, 1000, 0, FS_SMALL);
|
||||
SetDParam(1, 1);
|
||||
this->count_width = GetStringBoundingBox(STR_TINY_BLACK_DECIMAL).width + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT;
|
||||
} else {
|
||||
|
@@ -422,8 +422,10 @@ public:
|
||||
int bottom = back_nwi->pos_y + back_nwi->current_y;
|
||||
top = DrawStationCoverageAreaText(back_nwi->pos_x + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, top, SCT_ALL, rad, false) + WD_PAR_VSEP_NORMAL;
|
||||
top = DrawStationCoverageAreaText(back_nwi->pos_x + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, top, SCT_ALL, rad, true) + WD_PAR_VSEP_NORMAL;
|
||||
/* Resize background if the text is not equally long as the window. */
|
||||
if (top > bottom || (top < bottom && back_nwi->current_y > back_nwi->smallest_y)) {
|
||||
/* Resize background if the window is too small.
|
||||
* 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);
|
||||
}
|
||||
}
|
||||
|
@@ -1313,10 +1313,11 @@ static void LoadUnloadVehicle(Vehicle *front, int *cargo_left)
|
||||
artic_part++;
|
||||
|
||||
const Engine *e = v->GetEngine();
|
||||
byte load_amount = e->info.load_amount;
|
||||
uint load_amount = e->info.load_amount;
|
||||
|
||||
/* The default loadamount for mail is 1/4 of the load amount for passengers */
|
||||
if (v->type == VEH_AIRCRAFT && !Aircraft::From(v)->IsNormalAircraft()) load_amount = CeilDiv(load_amount, 4);
|
||||
bool air_mail = v->type == VEH_AIRCRAFT && !Aircraft::From(v)->IsNormalAircraft();
|
||||
if (air_mail) load_amount = CeilDiv(load_amount, 4);
|
||||
|
||||
if (_settings_game.order.gradual_loading) {
|
||||
uint16 cb_load_amount = CALLBACK_FAILED;
|
||||
@@ -1337,6 +1338,9 @@ static void LoadUnloadVehicle(Vehicle *front, int *cargo_left)
|
||||
}
|
||||
}
|
||||
|
||||
/* Scale load amount the same as capacity */
|
||||
if (HasBit(e->info.misc_flags, EF_NO_DEFAULT_CARGO_MULTIPLIER) && !air_mail) load_amount = CeilDiv(load_amount * CargoSpec::Get(v->cargo_type)->multiplier, 0x100);
|
||||
|
||||
GoodsEntry *ge = &st->goods[v->cargo_type];
|
||||
|
||||
if (HasBit(v->vehicle_flags, VF_CARGO_UNLOADING) && (front->current_order.GetUnloadType() & OUFB_NO_UNLOAD) == 0) {
|
||||
|
@@ -30,6 +30,7 @@
|
||||
#include "company_base.h"
|
||||
#include "vehicle_func.h"
|
||||
#include "articulated_vehicles.h"
|
||||
#include "error.h"
|
||||
|
||||
#include "table/strings.h"
|
||||
#include "table/engines.h"
|
||||
@@ -1098,3 +1099,25 @@ bool IsEngineRefittable(EngineID engine)
|
||||
CargoID default_cargo = e->GetDefaultCargoType();
|
||||
return default_cargo != CT_INVALID && ei->refit_mask != 1U << default_cargo;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check for engines that have an appropriate availability.
|
||||
*/
|
||||
void CheckEngines()
|
||||
{
|
||||
const Engine *e;
|
||||
Date min_date = INT32_MAX;
|
||||
|
||||
FOR_ALL_ENGINES(e) {
|
||||
if (!e->IsEnabled()) continue;
|
||||
|
||||
/* We have an available engine... yay! */
|
||||
if (e->flags & ENGINE_AVAILABLE && e->company_avail != 0) return;
|
||||
|
||||
/* Okay, try to find the earliest date. */
|
||||
min_date = min(min_date, e->info.base_intro);
|
||||
}
|
||||
|
||||
SetDParam(0, min_date);
|
||||
ShowErrorMessage(STR_ERROR_NO_VEHICLES_AVAILABLE, STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION, WL_WARNING);
|
||||
}
|
||||
|
@@ -18,6 +18,7 @@
|
||||
|
||||
void SetupEngines();
|
||||
void StartupEngines();
|
||||
void CheckEngines();
|
||||
|
||||
/* Original engine data counts and offsets */
|
||||
extern const uint8 _engine_counts[4];
|
||||
|
@@ -266,7 +266,6 @@ public:
|
||||
|
||||
this->querystrings[WID_SL_SAVE_OSK_TITLE] = &this->filename_editbox;
|
||||
this->filename_editbox.ok_button = WID_SL_SAVE_GAME;
|
||||
this->filename_editbox.afilter = CS_ALPHANUMERAL;
|
||||
|
||||
this->CreateNestedTree(desc, true);
|
||||
if (mode == SLD_LOAD_GAME) this->GetWidget<NWidgetStacked>(WID_SL_CONTENT_DOWNLOAD_SEL)->SetDisplayedPlane(SZSP_HORIZONTAL);
|
||||
|
1488
src/fontcache.cpp
1488
src/fontcache.cpp
File diff suppressed because it is too large
Load Diff
242
src/fontcache.h
242
src/fontcache.h
@@ -12,84 +12,200 @@
|
||||
#ifndef FONTCACHE_H
|
||||
#define FONTCACHE_H
|
||||
|
||||
#include "string_type.h"
|
||||
#include "spritecache.h"
|
||||
|
||||
/** Glyphs are characters from a font. */
|
||||
typedef uint32 GlyphID;
|
||||
static const GlyphID SPRITE_GLYPH = 1U << 30;
|
||||
|
||||
/** Font cache for basic fonts. */
|
||||
class FontCache {
|
||||
private:
|
||||
static FontCache *caches[FS_END]; ///< All the font caches.
|
||||
protected:
|
||||
FontCache *parent; ///< The parent of this font cache.
|
||||
const FontSize fs; ///< The size of the font.
|
||||
int height; ///< The height of the font.
|
||||
int ascender; ///< The ascender value of the font.
|
||||
int descender; ///< The descender value of the font.
|
||||
int units_per_em; ///< The units per EM value of the font.
|
||||
public:
|
||||
FontCache(FontSize fs);
|
||||
virtual ~FontCache();
|
||||
|
||||
/**
|
||||
* Get the FontSize of the font.
|
||||
* @return The FontSize.
|
||||
*/
|
||||
inline FontSize GetSize() const { return this->fs; }
|
||||
|
||||
/**
|
||||
* Get the height of the font.
|
||||
* @return The height of the font.
|
||||
*/
|
||||
inline int GetHeight() const { return this->height; }
|
||||
|
||||
/**
|
||||
* Get the ascender value of the font.
|
||||
* @return The ascender value of the font.
|
||||
*/
|
||||
inline int GetAscender() const { return this->ascender; }
|
||||
|
||||
/**
|
||||
* Get the descender value of the font.
|
||||
* @return The descender value of the font.
|
||||
*/
|
||||
inline int GetDescender() const{ return this->descender; }
|
||||
|
||||
/**
|
||||
* Get the units per EM value of the font.
|
||||
* @return The units per EM value of the font.
|
||||
*/
|
||||
inline int GetUnitsPerEM() const { return this->units_per_em; }
|
||||
|
||||
/**
|
||||
* Get the SpriteID mapped to the given key
|
||||
* @param key The key to get the sprite for.
|
||||
* @return The sprite.
|
||||
*/
|
||||
virtual SpriteID GetUnicodeGlyph(WChar key) = 0;
|
||||
|
||||
/**
|
||||
* Map a SpriteID to the key
|
||||
* @param key The key to map to.
|
||||
* @param sprite The sprite that is being mapped.
|
||||
*/
|
||||
virtual void SetUnicodeGlyph(WChar key, SpriteID sprite) = 0;
|
||||
|
||||
/** Initialize the glyph map */
|
||||
virtual void InitializeUnicodeGlyphMap() = 0;
|
||||
|
||||
/** Clear the font cache. */
|
||||
virtual void ClearFontCache() = 0;
|
||||
|
||||
/**
|
||||
* Get the glyph (sprite) of the given key.
|
||||
* @param key The key to look up.
|
||||
* @return The sprite.
|
||||
*/
|
||||
virtual const Sprite *GetGlyph(GlyphID key) = 0;
|
||||
|
||||
/**
|
||||
* Get the width of the glyph with the given key.
|
||||
* @param key The key to look up.
|
||||
* @return The width.
|
||||
*/
|
||||
virtual uint GetGlyphWidth(GlyphID key) = 0;
|
||||
|
||||
/**
|
||||
* Do we need to draw a glyph shadow?
|
||||
* @return True if it has to be done, otherwise false.
|
||||
*/
|
||||
virtual bool GetDrawGlyphShadow() = 0;
|
||||
|
||||
/**
|
||||
* Map a character into a glyph.
|
||||
* @param key The character.
|
||||
* @return The glyph ID used to draw the character.
|
||||
*/
|
||||
virtual GlyphID MapCharToGlyph(WChar key) = 0;
|
||||
|
||||
/**
|
||||
* Read a font table from the font.
|
||||
* @param tag The of the table to load.
|
||||
* @param length The length of the read data.
|
||||
* @return The loaded table data.
|
||||
*/
|
||||
virtual const void *GetFontTable(uint32 tag, size_t &length) = 0;
|
||||
|
||||
/**
|
||||
* Get the font cache of a given font size.
|
||||
* @param fs The font size to look up.
|
||||
* @return The font cache.
|
||||
*/
|
||||
static inline FontCache *Get(FontSize fs)
|
||||
{
|
||||
assert(fs < FS_END);
|
||||
return FontCache::caches[fs];
|
||||
}
|
||||
|
||||
/**
|
||||
* Check whether the font cache has a parent.
|
||||
*/
|
||||
inline bool HasParent()
|
||||
{
|
||||
return this->parent != NULL;
|
||||
}
|
||||
};
|
||||
|
||||
/** Get the SpriteID mapped to the given font size and key */
|
||||
SpriteID GetUnicodeGlyph(FontSize size, uint32 key);
|
||||
static inline SpriteID GetUnicodeGlyph(FontSize size, WChar key)
|
||||
{
|
||||
return FontCache::Get(size)->GetUnicodeGlyph(key);
|
||||
}
|
||||
|
||||
/** Map a SpriteID to the font size and key */
|
||||
void SetUnicodeGlyph(FontSize size, uint32 key, SpriteID sprite);
|
||||
static inline void SetUnicodeGlyph(FontSize size, WChar key, SpriteID sprite)
|
||||
{
|
||||
FontCache::Get(size)->SetUnicodeGlyph(key, sprite);
|
||||
}
|
||||
|
||||
/** Initialize the glyph map */
|
||||
void InitializeUnicodeGlyphMap();
|
||||
static inline void InitializeUnicodeGlyphMap()
|
||||
{
|
||||
for (FontSize fs = FS_BEGIN; fs < FS_END; fs++) {
|
||||
FontCache::Get(fs)->InitializeUnicodeGlyphMap();
|
||||
}
|
||||
}
|
||||
|
||||
static inline void ClearFontCache() {
|
||||
for (FontSize fs = FS_BEGIN; fs < FS_END; fs++) {
|
||||
FontCache::Get(fs)->ClearFontCache();
|
||||
}
|
||||
}
|
||||
|
||||
/** Get the Sprite for a glyph */
|
||||
static inline const Sprite *GetGlyph(FontSize size, WChar key)
|
||||
{
|
||||
FontCache *fc = FontCache::Get(size);
|
||||
return fc->GetGlyph(fc->MapCharToGlyph(key));
|
||||
}
|
||||
|
||||
/** Get the width of a glyph */
|
||||
static inline uint GetGlyphWidth(FontSize size, WChar key)
|
||||
{
|
||||
FontCache *fc = FontCache::Get(size);
|
||||
return fc->GetGlyphWidth(fc->MapCharToGlyph(key));
|
||||
}
|
||||
|
||||
static inline bool GetDrawGlyphShadow(FontSize size)
|
||||
{
|
||||
return FontCache::Get(size)->GetDrawGlyphShadow();
|
||||
}
|
||||
|
||||
#ifdef WITH_FREETYPE
|
||||
|
||||
/** Settings for a single freetype font. */
|
||||
struct FreeTypeSubSetting {
|
||||
char font[MAX_PATH]; ///< The name of the font, or path to the font.
|
||||
uint size; ///< The (requested) size of the font.
|
||||
bool aa; ///< Whether to do anti aliasing or not.
|
||||
};
|
||||
|
||||
/** Settings for the freetype fonts. */
|
||||
struct FreeTypeSettings {
|
||||
char small_font[MAX_PATH];
|
||||
char medium_font[MAX_PATH];
|
||||
char large_font[MAX_PATH];
|
||||
char mono_font[MAX_PATH];
|
||||
uint small_size;
|
||||
uint medium_size;
|
||||
uint large_size;
|
||||
uint mono_size;
|
||||
bool small_aa;
|
||||
bool medium_aa;
|
||||
bool large_aa;
|
||||
bool mono_aa;
|
||||
FreeTypeSubSetting small; ///< The smallest font; mostly used for zoomed out view.
|
||||
FreeTypeSubSetting medium; ///< The normal font size.
|
||||
FreeTypeSubSetting large; ///< The largest font; mostly used for newspapers.
|
||||
FreeTypeSubSetting mono; ///< The mono space font used for license/readme viewers.
|
||||
};
|
||||
|
||||
extern FreeTypeSettings _freetype;
|
||||
|
||||
void InitFreeType(bool monospace);
|
||||
void UninitFreeType();
|
||||
void ClearFontCache();
|
||||
const Sprite *GetGlyph(FontSize size, uint32 key);
|
||||
uint GetGlyphWidth(FontSize size, uint32 key);
|
||||
bool GetDrawGlyphShadow();
|
||||
|
||||
/**
|
||||
* We would like to have a fallback font as the current one
|
||||
* doesn't contain all characters we need.
|
||||
* This function must set all fonts of settings.
|
||||
* @param settings the settings to overwrite the fontname of.
|
||||
* @param language_isocode the language, e.g. en_GB.
|
||||
* @param winlangid the language ID windows style.
|
||||
* @param callback The function to call to check for missing glyphs.
|
||||
* @return true if a font has been set, false otherwise.
|
||||
*/
|
||||
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, class MissingGlyphSearcher *callback);
|
||||
|
||||
#else
|
||||
|
||||
/* Stub for initializiation */
|
||||
static inline void InitFreeType(bool monospace) { extern void ResetFontSizes(bool monospace); ResetFontSizes(monospace); }
|
||||
static inline void UninitFreeType() {}
|
||||
static inline void ClearFontCache() {}
|
||||
|
||||
/** Get the Sprite for a glyph */
|
||||
static inline const Sprite *GetGlyph(FontSize size, uint32 key)
|
||||
{
|
||||
SpriteID sprite = GetUnicodeGlyph(size, key);
|
||||
if (sprite == 0) sprite = GetUnicodeGlyph(size, '?');
|
||||
return GetSprite(sprite, ST_FONT);
|
||||
}
|
||||
|
||||
|
||||
/** Get the width of a glyph */
|
||||
static inline uint GetGlyphWidth(FontSize size, uint32 key)
|
||||
{
|
||||
SpriteID sprite = GetUnicodeGlyph(size, key);
|
||||
if (sprite == 0) sprite = GetUnicodeGlyph(size, '?');
|
||||
return SpriteExists(sprite) ? GetSprite(sprite, ST_FONT)->width + (size != FS_NORMAL) : 0;
|
||||
}
|
||||
|
||||
static inline bool GetDrawGlyphShadow()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif /* WITH_FREETYPE */
|
||||
|
||||
void InitFreeType(bool monospace);
|
||||
void UninitFreeType();
|
||||
|
||||
#endif /* FONTCACHE_H */
|
||||
|
780
src/fontdetection.cpp
Normal file
780
src/fontdetection.cpp
Normal file
@@ -0,0 +1,780 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file fontdetection.cpp Detection of the right font. */
|
||||
|
||||
#ifdef WITH_FREETYPE
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "debug.h"
|
||||
#include "fontdetection.h"
|
||||
#include "string_func.h"
|
||||
#include "strings_func.h"
|
||||
|
||||
extern FT_Library _library;
|
||||
|
||||
/**
|
||||
* Get the font loaded into a Freetype face by using a font-name.
|
||||
* If no appropriate font is found, the function returns an error
|
||||
*/
|
||||
|
||||
/* ========================================================================================
|
||||
* Windows support
|
||||
* ======================================================================================== */
|
||||
|
||||
#ifdef WIN32
|
||||
#include "core/alloc_func.hpp"
|
||||
#include "core/math_func.hpp"
|
||||
#include <windows.h>
|
||||
#include <shlobj.h> /* SHGetFolderPath */
|
||||
#include "os/windows/win32.h"
|
||||
|
||||
/**
|
||||
* Get the short DOS 8.3 format for paths.
|
||||
* FreeType doesn't support Unicode filenames and Windows' fopen (as used
|
||||
* by FreeType) doesn't support UTF-8 filenames. So we have to convert the
|
||||
* filename into something that isn't UTF-8 but represents the Unicode file
|
||||
* name. This is the short DOS 8.3 format. This does not contain any
|
||||
* characters that fopen doesn't support.
|
||||
* @param long_path the path in UTF-8.
|
||||
* @return the short path in ANSI (ASCII).
|
||||
*/
|
||||
char *GetShortPath(const char *long_path)
|
||||
{
|
||||
static char short_path[MAX_PATH];
|
||||
#ifdef UNICODE
|
||||
/* The non-unicode GetShortPath doesn't support UTF-8...,
|
||||
* so convert the path to wide chars, then get the short
|
||||
* path and convert it back again. */
|
||||
wchar_t long_path_w[MAX_PATH];
|
||||
MultiByteToWideChar(CP_UTF8, 0, long_path, -1, long_path_w, MAX_PATH);
|
||||
|
||||
wchar_t short_path_w[MAX_PATH];
|
||||
GetShortPathNameW(long_path_w, short_path_w, MAX_PATH);
|
||||
|
||||
WideCharToMultiByte(CP_ACP, 0, short_path_w, -1, short_path, MAX_PATH, NULL, NULL);
|
||||
#else
|
||||
/* Technically not needed, but do it for consistency. */
|
||||
GetShortPathNameA(long_path, short_path, MAX_PATH);
|
||||
#endif
|
||||
return short_path;
|
||||
}
|
||||
|
||||
/* Get the font file to be loaded into Freetype by looping the registry
|
||||
* location where windows lists all installed fonts. Not very nice, will
|
||||
* surely break if the registry path changes, but it works. Much better
|
||||
* solution would be to use CreateFont, and extract the font data from it
|
||||
* by GetFontData. The problem with this is that the font file needs to be
|
||||
* kept in memory then until the font is no longer needed. This could mean
|
||||
* an additional memory usage of 30MB (just for fonts!) when using an eastern
|
||||
* font for all font sizes */
|
||||
#define FONT_DIR_NT "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Fonts"
|
||||
#define FONT_DIR_9X "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Fonts"
|
||||
FT_Error GetFontByFaceName(const char *font_name, FT_Face *face)
|
||||
{
|
||||
FT_Error err = FT_Err_Cannot_Open_Resource;
|
||||
HKEY hKey;
|
||||
LONG ret;
|
||||
TCHAR vbuffer[MAX_PATH], dbuffer[256];
|
||||
TCHAR *font_namep;
|
||||
char *font_path;
|
||||
uint index;
|
||||
|
||||
/* On windows NT (2000, NT3.5, XP, etc.) the fonts are stored in the
|
||||
* "Windows NT" key, on Windows 9x in the Windows key. To save us having
|
||||
* to retrieve the windows version, we'll just query both */
|
||||
ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T(FONT_DIR_NT), 0, KEY_READ, &hKey);
|
||||
if (ret != ERROR_SUCCESS) ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T(FONT_DIR_9X), 0, KEY_READ, &hKey);
|
||||
|
||||
if (ret != ERROR_SUCCESS) {
|
||||
DEBUG(freetype, 0, "Cannot open registry key HKLM\\SOFTWARE\\Microsoft\\Windows (NT)\\CurrentVersion\\Fonts");
|
||||
return err;
|
||||
}
|
||||
|
||||
/* For Unicode we need some conversion between widechar and
|
||||
* normal char to match the data returned by RegEnumValue,
|
||||
* otherwise just use parameter */
|
||||
#if defined(UNICODE)
|
||||
font_namep = MallocT<TCHAR>(MAX_PATH);
|
||||
MB_TO_WIDE_BUFFER(font_name, font_namep, MAX_PATH * sizeof(TCHAR));
|
||||
#else
|
||||
font_namep = const_cast<char *>(font_name); // only cast because in unicode pointer is not const
|
||||
#endif
|
||||
|
||||
for (index = 0;; index++) {
|
||||
TCHAR *s;
|
||||
DWORD vbuflen = lengthof(vbuffer);
|
||||
DWORD dbuflen = lengthof(dbuffer);
|
||||
|
||||
ret = RegEnumValue(hKey, index, vbuffer, &vbuflen, NULL, NULL, (byte*)dbuffer, &dbuflen);
|
||||
if (ret != ERROR_SUCCESS) goto registry_no_font_found;
|
||||
|
||||
/* The font names in the registry are of the following 3 forms:
|
||||
* - ADMUI3.fon
|
||||
* - Book Antiqua Bold (TrueType)
|
||||
* - Batang & BatangChe & Gungsuh & GungsuhChe (TrueType)
|
||||
* We will strip the font-type '()' if any and work with the font name
|
||||
* itself, which must match exactly; if...
|
||||
* TTC files, font files which contain more than one font are separated
|
||||
* by '&'. Our best bet will be to do substr match for the fontname
|
||||
* and then let FreeType figure out which index to load */
|
||||
s = _tcschr(vbuffer, _T('('));
|
||||
if (s != NULL) s[-1] = '\0';
|
||||
|
||||
if (_tcschr(vbuffer, _T('&')) == NULL) {
|
||||
if (_tcsicmp(vbuffer, font_namep) == 0) break;
|
||||
} else {
|
||||
if (_tcsstr(vbuffer, font_namep) != NULL) break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!SUCCEEDED(OTTDSHGetFolderPath(NULL, CSIDL_FONTS, NULL, SHGFP_TYPE_CURRENT, vbuffer))) {
|
||||
DEBUG(freetype, 0, "SHGetFolderPath cannot return fonts directory");
|
||||
goto folder_error;
|
||||
}
|
||||
|
||||
/* Some fonts are contained in .ttc files, TrueType Collection fonts. These
|
||||
* contain multiple fonts inside this single file. GetFontData however
|
||||
* returns the whole file, so we need to check each font inside to get the
|
||||
* proper font.
|
||||
* Also note that FreeType does not support UNICODE filenames! */
|
||||
#if defined(UNICODE)
|
||||
/* We need a cast here back from wide because FreeType doesn't support
|
||||
* widechar filenames. Just use the buffer we allocated before for the
|
||||
* font_name search */
|
||||
font_path = (char*)font_namep;
|
||||
WIDE_TO_MB_BUFFER(vbuffer, font_path, MAX_PATH * sizeof(TCHAR));
|
||||
#else
|
||||
font_path = vbuffer;
|
||||
#endif
|
||||
|
||||
ttd_strlcat(font_path, "\\", MAX_PATH * sizeof(TCHAR));
|
||||
ttd_strlcat(font_path, WIDE_TO_MB(dbuffer), MAX_PATH * sizeof(TCHAR));
|
||||
|
||||
/* Convert the path into something that FreeType understands */
|
||||
font_path = GetShortPath(font_path);
|
||||
|
||||
index = 0;
|
||||
do {
|
||||
err = FT_New_Face(_library, font_path, index, face);
|
||||
if (err != FT_Err_Ok) break;
|
||||
|
||||
if (strncasecmp(font_name, (*face)->family_name, strlen((*face)->family_name)) == 0) break;
|
||||
/* Try english name if font name failed */
|
||||
if (strncasecmp(font_name + strlen(font_name) + 1, (*face)->family_name, strlen((*face)->family_name)) == 0) break;
|
||||
err = FT_Err_Cannot_Open_Resource;
|
||||
|
||||
} while ((FT_Long)++index != (*face)->num_faces);
|
||||
|
||||
|
||||
folder_error:
|
||||
registry_no_font_found:
|
||||
#if defined(UNICODE)
|
||||
free(font_namep);
|
||||
#endif
|
||||
RegCloseKey(hKey);
|
||||
return err;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonts can have localised names and when the system locale is the same as
|
||||
* one of those localised names Windows will always return that localised name
|
||||
* instead of allowing to get the non-localised (English US) name of the font.
|
||||
* This will later on give problems as freetype uses the non-localised name of
|
||||
* the font and we need to compare based on that name.
|
||||
* Windows furthermore DOES NOT have an API to get the non-localised name nor
|
||||
* can we override the system locale. This means that we have to actually read
|
||||
* the font itself to gather the font name we want.
|
||||
* Based on: http://blogs.msdn.com/michkap/archive/2006/02/13/530814.aspx
|
||||
* @param logfont the font information to get the english name of.
|
||||
* @return the English name (if it could be found).
|
||||
*/
|
||||
static const char *GetEnglishFontName(const ENUMLOGFONTEX *logfont)
|
||||
{
|
||||
static char font_name[MAX_PATH];
|
||||
const char *ret_font_name = NULL;
|
||||
uint pos = 0;
|
||||
HDC dc;
|
||||
HGDIOBJ oldfont;
|
||||
byte *buf;
|
||||
DWORD dw;
|
||||
uint16 format, count, stringOffset, platformId, encodingId, languageId, nameId, length, offset;
|
||||
|
||||
HFONT font = CreateFontIndirect(&logfont->elfLogFont);
|
||||
if (font == NULL) goto err1;
|
||||
|
||||
dc = GetDC(NULL);
|
||||
oldfont = SelectObject(dc, font);
|
||||
dw = GetFontData(dc, 'eman', 0, NULL, 0);
|
||||
if (dw == GDI_ERROR) goto err2;
|
||||
|
||||
buf = MallocT<byte>(dw);
|
||||
dw = GetFontData(dc, 'eman', 0, buf, dw);
|
||||
if (dw == GDI_ERROR) goto err3;
|
||||
|
||||
format = buf[pos++] << 8;
|
||||
format += buf[pos++];
|
||||
assert(format == 0);
|
||||
count = buf[pos++] << 8;
|
||||
count += buf[pos++];
|
||||
stringOffset = buf[pos++] << 8;
|
||||
stringOffset += buf[pos++];
|
||||
for (uint i = 0; i < count; i++) {
|
||||
platformId = buf[pos++] << 8;
|
||||
platformId += buf[pos++];
|
||||
encodingId = buf[pos++] << 8;
|
||||
encodingId += buf[pos++];
|
||||
languageId = buf[pos++] << 8;
|
||||
languageId += buf[pos++];
|
||||
nameId = buf[pos++] << 8;
|
||||
nameId += buf[pos++];
|
||||
if (nameId != 1) {
|
||||
pos += 4; // skip length and offset
|
||||
continue;
|
||||
}
|
||||
length = buf[pos++] << 8;
|
||||
length += buf[pos++];
|
||||
offset = buf[pos++] << 8;
|
||||
offset += buf[pos++];
|
||||
|
||||
/* Don't buffer overflow */
|
||||
length = min(length, MAX_PATH - 1);
|
||||
for (uint j = 0; j < length; j++) font_name[j] = buf[stringOffset + offset + j];
|
||||
font_name[length] = '\0';
|
||||
|
||||
if ((platformId == 1 && languageId == 0) || // Macintosh English
|
||||
(platformId == 3 && languageId == 0x0409)) { // Microsoft English (US)
|
||||
ret_font_name = font_name;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
err3:
|
||||
free(buf);
|
||||
err2:
|
||||
SelectObject(dc, oldfont);
|
||||
ReleaseDC(NULL, dc);
|
||||
DeleteObject(font);
|
||||
err1:
|
||||
return ret_font_name == NULL ? WIDE_TO_MB((const TCHAR*)logfont->elfFullName) : ret_font_name;
|
||||
}
|
||||
|
||||
class FontList {
|
||||
protected:
|
||||
TCHAR **fonts;
|
||||
uint items;
|
||||
uint capacity;
|
||||
|
||||
public:
|
||||
FontList() : fonts(NULL), items(0), capacity(0) { };
|
||||
|
||||
~FontList() {
|
||||
if (this->fonts == NULL) return;
|
||||
|
||||
for (uint i = 0; i < this->items; i++) {
|
||||
free(this->fonts[i]);
|
||||
}
|
||||
|
||||
free(this->fonts);
|
||||
}
|
||||
|
||||
bool Add(const TCHAR *font) {
|
||||
for (uint i = 0; i < this->items; i++) {
|
||||
if (_tcscmp(this->fonts[i], font) == 0) return false;
|
||||
}
|
||||
|
||||
if (this->items == this->capacity) {
|
||||
this->capacity += 10;
|
||||
this->fonts = ReallocT(this->fonts, this->capacity);
|
||||
}
|
||||
|
||||
this->fonts[this->items++] = _tcsdup(font);
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
struct EFCParam {
|
||||
FreeTypeSettings *settings;
|
||||
LOCALESIGNATURE locale;
|
||||
MissingGlyphSearcher *callback;
|
||||
FontList fonts;
|
||||
};
|
||||
|
||||
static int CALLBACK EnumFontCallback(const ENUMLOGFONTEX *logfont, const NEWTEXTMETRICEX *metric, DWORD type, LPARAM lParam)
|
||||
{
|
||||
EFCParam *info = (EFCParam *)lParam;
|
||||
|
||||
/* Skip duplicates */
|
||||
if (!info->fonts.Add((const TCHAR*)logfont->elfFullName)) return 1;
|
||||
/* Only use TrueType fonts */
|
||||
if (!(type & TRUETYPE_FONTTYPE)) return 1;
|
||||
/* Don't use SYMBOL fonts */
|
||||
if (logfont->elfLogFont.lfCharSet == SYMBOL_CHARSET) return 1;
|
||||
/* Use monospaced fonts when asked for it. */
|
||||
if (info->callback->Monospace() && (logfont->elfLogFont.lfPitchAndFamily & (FF_MODERN | FIXED_PITCH)) != (FF_MODERN | FIXED_PITCH)) return 1;
|
||||
|
||||
/* The font has to have at least one of the supported locales to be usable. */
|
||||
if ((metric->ntmFontSig.fsCsb[0] & info->locale.lsCsbSupported[0]) == 0 && (metric->ntmFontSig.fsCsb[1] & info->locale.lsCsbSupported[1]) == 0) {
|
||||
/* On win9x metric->ntmFontSig seems to contain garbage. */
|
||||
FONTSIGNATURE fs;
|
||||
memset(&fs, 0, sizeof(fs));
|
||||
HFONT font = CreateFontIndirect(&logfont->elfLogFont);
|
||||
if (font != NULL) {
|
||||
HDC dc = GetDC(NULL);
|
||||
HGDIOBJ oldfont = SelectObject(dc, font);
|
||||
GetTextCharsetInfo(dc, &fs, 0);
|
||||
SelectObject(dc, oldfont);
|
||||
ReleaseDC(NULL, dc);
|
||||
DeleteObject(font);
|
||||
}
|
||||
if ((fs.fsCsb[0] & info->locale.lsCsbSupported[0]) == 0 && (fs.fsCsb[1] & info->locale.lsCsbSupported[1]) == 0) return 1;
|
||||
}
|
||||
|
||||
char font_name[MAX_PATH];
|
||||
#if defined(UNICODE)
|
||||
WIDE_TO_MB_BUFFER((const TCHAR*)logfont->elfFullName, font_name, lengthof(font_name));
|
||||
#else
|
||||
strecpy(font_name, (const TCHAR*)logfont->elfFullName, lastof(font_name));
|
||||
#endif
|
||||
|
||||
/* Add english name after font name */
|
||||
const char *english_name = GetEnglishFontName(logfont);
|
||||
strecpy(font_name + strlen(font_name) + 1, english_name, lastof(font_name));
|
||||
|
||||
/* Check whether we can actually load the font. */
|
||||
bool ft_init = _library != NULL;
|
||||
bool found = false;
|
||||
FT_Face face;
|
||||
/* Init FreeType if needed. */
|
||||
if ((ft_init || FT_Init_FreeType(&_library) == FT_Err_Ok) && GetFontByFaceName(font_name, &face) == FT_Err_Ok) {
|
||||
FT_Done_Face(face);
|
||||
found = true;
|
||||
}
|
||||
if (!ft_init) {
|
||||
/* Uninit FreeType if we did the init. */
|
||||
FT_Done_FreeType(_library);
|
||||
_library = NULL;
|
||||
}
|
||||
|
||||
if (!found) return 1;
|
||||
|
||||
info->callback->SetFontNames(info->settings, font_name);
|
||||
if (info->callback->FindMissingGlyphs(NULL)) return 1;
|
||||
DEBUG(freetype, 1, "Fallback font: %s (%s)", font_name, english_name);
|
||||
return 0; // stop enumerating
|
||||
}
|
||||
|
||||
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, MissingGlyphSearcher *callback)
|
||||
{
|
||||
DEBUG(freetype, 1, "Trying fallback fonts");
|
||||
EFCParam langInfo;
|
||||
if (GetLocaleInfo(MAKELCID(winlangid, SORT_DEFAULT), LOCALE_FONTSIGNATURE, (LPTSTR)&langInfo.locale, sizeof(langInfo.locale) / sizeof(TCHAR)) == 0) {
|
||||
/* Invalid langid or some other mysterious error, can't determine fallback font. */
|
||||
DEBUG(freetype, 1, "Can't get locale info for fallback font (langid=0x%x)", winlangid);
|
||||
return false;
|
||||
}
|
||||
langInfo.settings = settings;
|
||||
langInfo.callback = callback;
|
||||
|
||||
LOGFONT font;
|
||||
/* Enumerate all fonts. */
|
||||
font.lfCharSet = DEFAULT_CHARSET;
|
||||
font.lfFaceName[0] = '\0';
|
||||
font.lfPitchAndFamily = 0;
|
||||
|
||||
HDC dc = GetDC(NULL);
|
||||
int ret = EnumFontFamiliesEx(dc, &font, (FONTENUMPROC)&EnumFontCallback, (LPARAM)&langInfo, 0);
|
||||
ReleaseDC(NULL, dc);
|
||||
return ret == 0;
|
||||
}
|
||||
|
||||
#elif defined(__APPLE__) /* end ifdef Win32 */
|
||||
/* ========================================================================================
|
||||
* OSX support
|
||||
* ======================================================================================== */
|
||||
|
||||
#include "os/macosx/macos.h"
|
||||
|
||||
FT_Error GetFontByFaceName(const char *font_name, FT_Face *face)
|
||||
{
|
||||
FT_Error err = FT_Err_Cannot_Open_Resource;
|
||||
|
||||
/* Get font reference from name. */
|
||||
CFStringRef name = CFStringCreateWithCString(kCFAllocatorDefault, font_name, kCFStringEncodingUTF8);
|
||||
ATSFontRef font = ATSFontFindFromName(name, kATSOptionFlagsDefault);
|
||||
CFRelease(name);
|
||||
if (font == kInvalidFont) return err;
|
||||
|
||||
/* Get a file system reference for the font. */
|
||||
FSRef ref;
|
||||
OSStatus os_err = -1;
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
|
||||
if (MacOSVersionIsAtLeast(10, 5, 0)) {
|
||||
os_err = ATSFontGetFileReference(font, &ref);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
#if (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5) && !__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
|
||||
#endif
|
||||
FSSpec spec;
|
||||
os_err = ATSFontGetFileSpecification(font, (ATSFSSpec *)&spec);
|
||||
if (os_err == noErr) os_err = FSpMakeFSRef(&spec, &ref);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (os_err == noErr) {
|
||||
/* Get unix path for file. */
|
||||
UInt8 file_path[PATH_MAX];
|
||||
if (FSRefMakePath(&ref, file_path, sizeof(file_path)) == noErr) {
|
||||
DEBUG(freetype, 3, "Font path for %s: %s", font_name, file_path);
|
||||
err = FT_New_Face(_library, (const char *)file_path, 0, face);
|
||||
}
|
||||
}
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, MissingGlyphSearcher *callback)
|
||||
{
|
||||
const char *str;
|
||||
bool result = false;
|
||||
|
||||
callback->FindMissingGlyphs(&str);
|
||||
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
|
||||
if (MacOSVersionIsAtLeast(10, 5, 0)) {
|
||||
/* Determine fallback font using CoreText. This uses the language isocode
|
||||
* to find a suitable font. CoreText is available from 10.5 onwards. */
|
||||
char lang[16];
|
||||
if (strcmp(language_isocode, "zh_TW") == 0) {
|
||||
/* Traditional Chinese */
|
||||
strecpy(lang, "zh-Hant", lastof(lang));
|
||||
} else if (strcmp(language_isocode, "zh_CN") == 0) {
|
||||
/* Simplified Chinese */
|
||||
strecpy(lang, "zh-Hans", lastof(lang));
|
||||
} else if (strncmp(language_isocode, "ur", 2) == 0) {
|
||||
/* The urdu alphabet is variant of persian. As OS X has no default
|
||||
* font that advertises an urdu language code, search for persian
|
||||
* support instead. */
|
||||
strecpy(lang, "fa", lastof(lang));
|
||||
} else {
|
||||
/* Just copy the first part of the isocode. */
|
||||
strecpy(lang, language_isocode, lastof(lang));
|
||||
char *sep = strchr(lang, '_');
|
||||
if (sep != NULL) *sep = '\0';
|
||||
}
|
||||
|
||||
CFStringRef lang_code;
|
||||
lang_code = CFStringCreateWithCString(kCFAllocatorDefault, lang, kCFStringEncodingUTF8);
|
||||
|
||||
/* Create a font iterator and iterate over all fonts that
|
||||
* are available to the application. */
|
||||
ATSFontIterator itr;
|
||||
ATSFontRef font;
|
||||
ATSFontIteratorCreate(kATSFontContextLocal, NULL, NULL, kATSOptionFlagsUnRestrictedScope, &itr);
|
||||
while (!result && ATSFontIteratorNext(itr, &font) == noErr) {
|
||||
/* Get CoreText font handle. */
|
||||
CTFontRef font_ref = CTFontCreateWithPlatformFont(font, 0.0, NULL, NULL);
|
||||
CFArrayRef langs = CTFontCopySupportedLanguages(font_ref);
|
||||
if (langs != NULL) {
|
||||
/* Font has a list of supported languages. */
|
||||
for (CFIndex i = 0; i < CFArrayGetCount(langs); i++) {
|
||||
CFStringRef lang = (CFStringRef)CFArrayGetValueAtIndex(langs, i);
|
||||
if (CFStringCompare(lang, lang_code, kCFCompareAnchored) == kCFCompareEqualTo) {
|
||||
/* Lang code is supported by font, get full font name. */
|
||||
CFStringRef font_name = CTFontCopyFullName(font_ref);
|
||||
char name[128];
|
||||
CFStringGetCString(font_name, name, lengthof(name), kCFStringEncodingUTF8);
|
||||
CFRelease(font_name);
|
||||
/* Skip some inappropriate or ugly looking fonts that have better alternatives. */
|
||||
if (strncmp(name, "Courier", 7) == 0 || strncmp(name, "Apple Symbols", 13) == 0 ||
|
||||
strncmp(name, ".Aqua", 5) == 0 || strncmp(name, "LastResort", 10) == 0 ||
|
||||
strncmp(name, "GB18030 Bitmap", 14) == 0) continue;
|
||||
|
||||
/* Save result. */
|
||||
callback->SetFontNames(settings, name);
|
||||
DEBUG(freetype, 2, "CT-Font for %s: %s", language_isocode, name);
|
||||
result = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
CFRelease(langs);
|
||||
}
|
||||
CFRelease(font_ref);
|
||||
}
|
||||
ATSFontIteratorRelease(&itr);
|
||||
CFRelease(lang_code);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
#if (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5) && !__LP64__
|
||||
/* Determine fallback font using ATSUI. This uses a string sample with
|
||||
* missing characters. This is not failure-proof, but a better way like
|
||||
* using the isocode as in the CoreText code path is not available.
|
||||
* ATSUI was deprecated with 10.6 and is only partially available in
|
||||
* 64-bit mode. */
|
||||
|
||||
/* Remove all control characters in the range from SCC_CONTROL_START to
|
||||
* SCC_CONTROL_END as well as all ASCII < 0x20 from the string as it will
|
||||
* mess with the automatic font detection */
|
||||
char buff[256]; // This length is enough to find a suitable replacement font
|
||||
strecpy(buff, str, lastof(buff));
|
||||
str_validate(buff, lastof(buff), SVS_ALLOW_NEWLINE);
|
||||
|
||||
/* Extract a UniChar representation of the sample string. */
|
||||
CFStringRef cf_str = CFStringCreateWithCString(kCFAllocatorDefault, buff, kCFStringEncodingUTF8);
|
||||
if (cf_str == NULL) {
|
||||
/* Something went wrong. Corrupt/invalid sample string? */
|
||||
return false;
|
||||
}
|
||||
CFIndex str_len = CFStringGetLength(cf_str);
|
||||
UniChar string[str_len];
|
||||
CFStringGetCharacters(cf_str, CFRangeMake(0, str_len), string);
|
||||
|
||||
/* Create a default text style with the default font. */
|
||||
ATSUStyle style;
|
||||
ATSUCreateStyle(&style);
|
||||
|
||||
/* Create a text layout object from the sample string using the text style. */
|
||||
UniCharCount run_len = kATSUToTextEnd;
|
||||
ATSUTextLayout text_layout;
|
||||
ATSUCreateTextLayoutWithTextPtr(string, kATSUFromTextBeginning, kATSUToTextEnd, str_len, 1, &run_len, &style, &text_layout);
|
||||
|
||||
/* Try to match a font for the sample text. ATSUMatchFontsToText stops after
|
||||
* it finds the first continuous character run not renderable with the currently
|
||||
* selected font starting at offset. The matching needs to be repeated until
|
||||
* the end of the string is reached to make sure the fallback font matches for
|
||||
* all characters in the string and not only the first run. */
|
||||
UniCharArrayOffset offset = kATSUFromTextBeginning;
|
||||
OSStatus os_err;
|
||||
do {
|
||||
ATSUFontID font;
|
||||
UniCharCount run_len;
|
||||
os_err = ATSUMatchFontsToText(text_layout, offset, kATSUToTextEnd, &font, &offset, &run_len);
|
||||
if (os_err == kATSUFontsMatched) {
|
||||
/* Found a better fallback font. Update the text layout
|
||||
* object with the new font. */
|
||||
ATSUAttributeTag tag = kATSUFontTag;
|
||||
ByteCount size = sizeof(font);
|
||||
ATSUAttributeValuePtr val = &font;
|
||||
ATSUSetAttributes(style, 1, &tag, &size, &val);
|
||||
offset += run_len;
|
||||
}
|
||||
/* Exit if the end of the string is reached or some other error occurred. */
|
||||
} while (os_err == kATSUFontsMatched && offset < (UniCharArrayOffset)str_len);
|
||||
|
||||
if (os_err == noErr || os_err == kATSUFontsMatched) {
|
||||
/* ATSUMatchFontsToText exited normally. Extract font
|
||||
* out of the text layout object. */
|
||||
ATSUFontID font;
|
||||
ByteCount act_len;
|
||||
ATSUGetAttribute(style, kATSUFontTag, sizeof(font), &font, &act_len);
|
||||
|
||||
/* Get unique font name. The result is not a c-string, we have
|
||||
* to leave space for a \0 and terminate it ourselves. */
|
||||
char name[128];
|
||||
ATSUFindFontName(font, kFontUniqueName, kFontNoPlatformCode, kFontNoScriptCode, kFontNoLanguageCode, 127, name, &act_len, NULL);
|
||||
name[act_len > 127 ? 127 : act_len] = '\0';
|
||||
|
||||
/* Save Result. */
|
||||
callback->SetFontNames(settings, name);
|
||||
DEBUG(freetype, 2, "ATSUI-Font for %s: %s", language_isocode, name);
|
||||
result = true;
|
||||
}
|
||||
|
||||
ATSUDisposeTextLayout(text_layout);
|
||||
ATSUDisposeStyle(style);
|
||||
CFRelease(cf_str);
|
||||
#endif
|
||||
}
|
||||
|
||||
if (result && strncmp(settings->medium.font, "Geeza Pro", 9) == 0) {
|
||||
/* The font 'Geeza Pro' is often found for arabic characters, but
|
||||
* it has the 'tiny' problem of not having any latin characters.
|
||||
* 'Arial Unicode MS' on the other hand has arabic and latin glyphs,
|
||||
* but seems to 'forget' to inform the OS about this fact. Manually
|
||||
* substitute the latter for the former if it is loadable. */
|
||||
bool ft_init = _library != NULL;
|
||||
FT_Face face;
|
||||
/* Init FreeType if needed. */
|
||||
if ((ft_init || FT_Init_FreeType(&_library) == FT_Err_Ok) && GetFontByFaceName("Arial Unicode MS", &face) == FT_Err_Ok) {
|
||||
FT_Done_Face(face);
|
||||
callback->SetFontNames(settings, "Arial Unicode MS");
|
||||
DEBUG(freetype, 1, "Replacing font 'Geeza Pro' with 'Arial Unicode MS'");
|
||||
}
|
||||
if (!ft_init) {
|
||||
/* Uninit FreeType if we did the init. */
|
||||
FT_Done_FreeType(_library);
|
||||
_library = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
callback->FindMissingGlyphs(NULL);
|
||||
return result;
|
||||
}
|
||||
|
||||
#elif defined(WITH_FONTCONFIG) /* end ifdef __APPLE__ */
|
||||
|
||||
#include <fontconfig/fontconfig.h>
|
||||
|
||||
/* ========================================================================================
|
||||
* FontConfig (unix) support
|
||||
* ======================================================================================== */
|
||||
FT_Error GetFontByFaceName(const char *font_name, FT_Face *face)
|
||||
{
|
||||
FT_Error err = FT_Err_Cannot_Open_Resource;
|
||||
|
||||
if (!FcInit()) {
|
||||
ShowInfoF("Unable to load font configuration");
|
||||
} else {
|
||||
FcPattern *match;
|
||||
FcPattern *pat;
|
||||
FcFontSet *fs;
|
||||
FcResult result;
|
||||
char *font_style;
|
||||
char *font_family;
|
||||
|
||||
/* Split & strip the font's style */
|
||||
font_family = strdup(font_name);
|
||||
font_style = strchr(font_family, ',');
|
||||
if (font_style != NULL) {
|
||||
font_style[0] = '\0';
|
||||
font_style++;
|
||||
while (*font_style == ' ' || *font_style == '\t') font_style++;
|
||||
}
|
||||
|
||||
/* Resolve the name and populate the information structure */
|
||||
pat = FcNameParse((FcChar8*)font_family);
|
||||
if (font_style != NULL) FcPatternAddString(pat, FC_STYLE, (FcChar8*)font_style);
|
||||
FcConfigSubstitute(0, pat, FcMatchPattern);
|
||||
FcDefaultSubstitute(pat);
|
||||
fs = FcFontSetCreate();
|
||||
match = FcFontMatch(0, pat, &result);
|
||||
|
||||
if (fs != NULL && match != NULL) {
|
||||
int i;
|
||||
FcChar8 *family;
|
||||
FcChar8 *style;
|
||||
FcChar8 *file;
|
||||
FcFontSetAdd(fs, match);
|
||||
|
||||
for (i = 0; err != FT_Err_Ok && i < fs->nfont; i++) {
|
||||
/* Try the new filename */
|
||||
if (FcPatternGetString(fs->fonts[i], FC_FILE, 0, &file) == FcResultMatch &&
|
||||
FcPatternGetString(fs->fonts[i], FC_FAMILY, 0, &family) == FcResultMatch &&
|
||||
FcPatternGetString(fs->fonts[i], FC_STYLE, 0, &style) == FcResultMatch) {
|
||||
|
||||
/* The correct style? */
|
||||
if (font_style != NULL && strcasecmp(font_style, (char*)style) != 0) continue;
|
||||
|
||||
/* Font config takes the best shot, which, if the family name is spelled
|
||||
* wrongly a 'random' font, so check whether the family name is the
|
||||
* same as the supplied name */
|
||||
if (strcasecmp(font_family, (char*)family) == 0) {
|
||||
err = FT_New_Face(_library, (char *)file, 0, face);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
free(font_family);
|
||||
FcPatternDestroy(pat);
|
||||
FcFontSetDestroy(fs);
|
||||
FcFini();
|
||||
}
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, MissingGlyphSearcher *callback)
|
||||
{
|
||||
if (!FcInit()) return false;
|
||||
|
||||
bool ret = false;
|
||||
|
||||
/* Fontconfig doesn't handle full language isocodes, only the part
|
||||
* before the _ of e.g. en_GB is used, so "remove" everything after
|
||||
* the _. */
|
||||
char lang[16];
|
||||
seprintf(lang, lastof(lang), ":lang=%s", language_isocode);
|
||||
char *split = strchr(lang, '_');
|
||||
if (split != NULL) *split = '\0';
|
||||
|
||||
/* First create a pattern to match the wanted language. */
|
||||
FcPattern *pat = FcNameParse((FcChar8*)lang);
|
||||
/* We only want to know the filename. */
|
||||
FcObjectSet *os = FcObjectSetBuild(FC_FILE, FC_SPACING, FC_SLANT, FC_WEIGHT, NULL);
|
||||
/* Get the list of filenames matching the wanted language. */
|
||||
FcFontSet *fs = FcFontList(NULL, pat, os);
|
||||
|
||||
/* We don't need these anymore. */
|
||||
FcObjectSetDestroy(os);
|
||||
FcPatternDestroy(pat);
|
||||
|
||||
if (fs != NULL) {
|
||||
int best_weight = -1;
|
||||
const char *best_font = NULL;
|
||||
|
||||
for (int i = 0; i < fs->nfont; i++) {
|
||||
FcPattern *font = fs->fonts[i];
|
||||
|
||||
FcChar8 *file = NULL;
|
||||
FcResult res = FcPatternGetString(font, FC_FILE, 0, &file);
|
||||
if (res != FcResultMatch || file == NULL) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Get a font with the right spacing .*/
|
||||
int value = 0;
|
||||
FcPatternGetInteger(font, FC_SPACING, 0, &value);
|
||||
if (callback->Monospace() != (value == FC_MONO) && value != FC_DUAL) continue;
|
||||
|
||||
/* Do not use those that explicitly say they're slanted. */
|
||||
FcPatternGetInteger(font, FC_SLANT, 0, &value);
|
||||
if (value != 0) continue;
|
||||
|
||||
/* We want the fatter font as they look better at small sizes. */
|
||||
FcPatternGetInteger(font, FC_WEIGHT, 0, &value);
|
||||
if (value <= best_weight) continue;
|
||||
|
||||
callback->SetFontNames(settings, (const char*)file);
|
||||
|
||||
bool missing = callback->FindMissingGlyphs(NULL);
|
||||
DEBUG(freetype, 1, "Font \"%s\" misses%s glyphs", file, missing ? "" : " no");
|
||||
|
||||
if (!missing) {
|
||||
best_weight = value;
|
||||
best_font = (const char *)file;
|
||||
}
|
||||
}
|
||||
|
||||
if (best_font != NULL) {
|
||||
ret = true;
|
||||
callback->SetFontNames(settings, best_font);
|
||||
InitFreeType(callback->Monospace());
|
||||
}
|
||||
|
||||
/* Clean up the list of filenames. */
|
||||
FcFontSetDestroy(fs);
|
||||
}
|
||||
|
||||
FcFini();
|
||||
return ret;
|
||||
}
|
||||
|
||||
#else /* without WITH_FONTCONFIG */
|
||||
FT_Error GetFontByFaceName(const char *font_name, FT_Face *face) {return FT_Err_Cannot_Open_Resource;}
|
||||
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, MissingGlyphSearcher *callback) { return false; }
|
||||
#endif /* WITH_FONTCONFIG */
|
||||
|
||||
#endif /* WITH_FREETYPE */
|
44
src/fontdetection.h
Normal file
44
src/fontdetection.h
Normal file
@@ -0,0 +1,44 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file fontdetection.h Functions related to detecting/finding the right font. */
|
||||
|
||||
#ifndef FONTDETECTION_H
|
||||
#define FONTDETECTION_H
|
||||
|
||||
#include "fontcache.h"
|
||||
|
||||
#ifdef WITH_FREETYPE
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
|
||||
/**
|
||||
* Load a freetype font face with the given font name.
|
||||
* @param font_name The name of the font to load.
|
||||
* @param face The face that has been found.
|
||||
* @return The error we encountered.
|
||||
*/
|
||||
FT_Error GetFontByFaceName(const char *font_name, FT_Face *face);
|
||||
|
||||
/**
|
||||
* We would like to have a fallback font as the current one
|
||||
* doesn't contain all characters we need.
|
||||
* This function must set all fonts of settings.
|
||||
* @param settings the settings to overwrite the fontname of.
|
||||
* @param language_isocode the language, e.g. en_GB.
|
||||
* @param winlangid the language ID windows style.
|
||||
* @param callback The function to call to check for missing glyphs.
|
||||
* @return true if a font has been set, false otherwise.
|
||||
*/
|
||||
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, class MissingGlyphSearcher *callback);
|
||||
|
||||
#endif /* WITH_FREETYPE */
|
||||
|
||||
#endif
|
@@ -112,11 +112,6 @@ public:
|
||||
*/
|
||||
static class GameInstance *GetInstance() { return Game::instance; }
|
||||
|
||||
/**
|
||||
* Get the current active mainscript.
|
||||
*/
|
||||
static const char *GetMainScript();
|
||||
|
||||
#if defined(ENABLE_NETWORK)
|
||||
/** Wrapper function for GameScanner::HasGame */
|
||||
static bool HasGame(const struct ContentInfo *ci, bool md5sum);
|
||||
|
@@ -27,11 +27,6 @@
|
||||
/* static */ GameScannerInfo *Game::scanner_info = NULL;
|
||||
/* static */ GameScannerLibrary *Game::scanner_library = NULL;
|
||||
|
||||
/* static */ const char *Game::GetMainScript()
|
||||
{
|
||||
return Game::info->GetMainScript();
|
||||
}
|
||||
|
||||
/* static */ void Game::GameLoop()
|
||||
{
|
||||
if (_networking && !_network_server) return;
|
||||
@@ -76,6 +71,8 @@
|
||||
GameInfo *info = config->GetInfo();
|
||||
if (info == NULL) return;
|
||||
|
||||
config->AnchorUnchangeableSettings();
|
||||
|
||||
Backup<CompanyByte> cur_company(_current_company, FILE_LINE);
|
||||
cur_company.Change(OWNER_DEITY);
|
||||
|
||||
|
@@ -13,10 +13,12 @@
|
||||
#include "../strgen/strgen.h"
|
||||
#include "../debug.h"
|
||||
#include "../fileio_func.h"
|
||||
#include "../tar_type.h"
|
||||
#include "../script/squirrel_class.hpp"
|
||||
#include "../strings_func.h"
|
||||
#include "game_text.hpp"
|
||||
#include "game.hpp"
|
||||
#include "game_info.hpp"
|
||||
|
||||
#include "table/strings.h"
|
||||
|
||||
@@ -208,22 +210,6 @@ struct StringNameWriter : HeaderWriter {
|
||||
}
|
||||
};
|
||||
|
||||
static void GetBasePath(char *buffer, size_t length)
|
||||
{
|
||||
strecpy(buffer, Game::GetMainScript(), buffer + length);
|
||||
char *s = strrchr(buffer, PATHSEPCHAR);
|
||||
if (s != NULL) {
|
||||
/* Keep the PATHSEPCHAR there, remove the rest */
|
||||
s++;
|
||||
*s = '\0';
|
||||
}
|
||||
|
||||
/* Tars dislike opening files with '/' on Windows.. so convert it to '\\' */
|
||||
#if (PATHSEPCHAR != '/')
|
||||
for (char *n = buffer; *n != '\0'; n++) if (*n == '/') *n = PATHSEPCHAR;
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Scanner to find language files in a GameScript directory.
|
||||
*/
|
||||
@@ -260,20 +246,45 @@ public:
|
||||
*/
|
||||
GameStrings *LoadTranslations()
|
||||
{
|
||||
const GameInfo *info = Game::GetInfo();
|
||||
char filename[512];
|
||||
strecpy(filename, info->GetMainScript(), lastof(filename));
|
||||
char *e = strrchr(filename, PATHSEPCHAR);
|
||||
if (e == NULL) return NULL;
|
||||
e++; // Make 'e' point after the PATHSEPCHAR
|
||||
|
||||
strecpy(e, "lang" PATHSEP "english.txt", lastof(filename));
|
||||
if (!FioCheckFileExists(filename, GAME_DIR)) return NULL;
|
||||
|
||||
GameStrings *gs = new GameStrings();
|
||||
try {
|
||||
char filename[512];
|
||||
GetBasePath(filename, sizeof(filename));
|
||||
char *e = filename + strlen(filename);
|
||||
|
||||
seprintf(e, filename + sizeof(filename), "lang" PATHSEP "english.txt");
|
||||
if (!FioCheckFileExists(filename, GAME_DIR)) throw std::exception();
|
||||
*gs->raw_strings.Append() = ReadRawLanguageStrings(filename);
|
||||
|
||||
/* Scan for other language files */
|
||||
LanguageScanner scanner(gs, filename);
|
||||
strecpy(e, "lang" PATHSEP, filename + sizeof(filename));
|
||||
scanner.Scan(filename);
|
||||
strecpy(e, "lang" PATHSEP, lastof(filename));
|
||||
size_t len = strlen(filename);
|
||||
|
||||
const char *tar_filename = info->GetTarFile();
|
||||
TarList::iterator iter;
|
||||
if (tar_filename != NULL && (iter = _tar_list[GAME_DIR].find(tar_filename)) != _tar_list[GAME_DIR].end()) {
|
||||
/* The main script is in a tar file, so find all files that
|
||||
* are in the same tar and add them to the langfile scanner. */
|
||||
TarFileList::iterator tar;
|
||||
FOR_ALL_TARS(tar, GAME_DIR) {
|
||||
/* Not in the same tar. */
|
||||
if (tar->second.tar_filename != iter->first) continue;
|
||||
|
||||
/* Check the path and extension. */
|
||||
if (tar->first.size() <= len || tar->first.compare(0, len, filename) != 0) continue;
|
||||
if (tar->first.compare(tar->first.size() - 4, 4, ".txt") != 0) continue;
|
||||
|
||||
scanner.AddFile(tar->first.c_str(), 0, tar_filename);
|
||||
}
|
||||
} else {
|
||||
/* Scan filesystem */
|
||||
scanner.Scan(filename);
|
||||
}
|
||||
|
||||
gs->Compile();
|
||||
return gs;
|
||||
|
@@ -320,7 +320,7 @@ struct GenerateLandscapeWindow : public Window {
|
||||
this->querystrings[WID_GL_RANDOM_EDITBOX] = &this->seed_editbox;
|
||||
this->seed_editbox.text.Print("%u", _settings_newgame.game_creation.generation_seed);
|
||||
this->seed_editbox.caption = STR_NULL;
|
||||
this->seed_editbox.afilter = CS_NUMERAL;
|
||||
this->seed_editbox.text.afilter = CS_NUMERAL;
|
||||
|
||||
this->mode = (GenenerateLandscapeWindowMode)this->window_number;
|
||||
|
||||
|
883
src/gfx.cpp
883
src/gfx.cpp
File diff suppressed because it is too large
Load Diff
@@ -105,7 +105,6 @@ enum StringAlignment {
|
||||
SA_CENTER = SA_HOR_CENTER | SA_VERT_CENTER, ///< Center both horizontally and vertically.
|
||||
|
||||
SA_FORCE = 1 << 4, ///< Force the alignment, i.e. don't swap for RTL languages.
|
||||
SA_STRIP = 1 << 5, ///< Strip the SETX/SETXY commands from the string
|
||||
};
|
||||
DECLARE_ENUM_AS_BIT_SET(StringAlignment)
|
||||
|
||||
@@ -122,8 +121,8 @@ void DrawBox(int x, int y, int dx1, int dy1, int dx2, int dy2, int dx3, int dy3)
|
||||
|
||||
Dimension GetStringBoundingBox(const char *str, FontSize start_fontsize = FS_NORMAL);
|
||||
Dimension GetStringBoundingBox(StringID strid);
|
||||
uint32 FormatStringLinebreaks(char *str, const char *last, int maxw, FontSize start_fontsize = FS_NORMAL);
|
||||
int GetStringHeight(StringID str, int maxw);
|
||||
int GetStringLineCount(StringID str, int maxw);
|
||||
Dimension GetStringMultiLineBoundingBox(StringID str, const Dimension &suggestion);
|
||||
Dimension GetStringMultiLineBoundingBox(const char *str, const Dimension &suggestion);
|
||||
void LoadStringWidthTable(bool monospace = false);
|
||||
@@ -150,18 +149,9 @@ bool ToggleFullScreen(bool fs);
|
||||
/* gfx.cpp */
|
||||
byte GetCharacterWidth(FontSize size, uint32 key);
|
||||
byte GetDigitWidth(FontSize size = FS_NORMAL);
|
||||
void GetBroadestDigit(uint *front, uint *next, FontSize size = FS_NORMAL);
|
||||
|
||||
/**
|
||||
* Get height of a character for a given font size.
|
||||
* @param size Font size to get height of
|
||||
* @return Height of characters in the given font (pixels)
|
||||
*/
|
||||
static inline byte GetCharacterHeight(FontSize size)
|
||||
{
|
||||
assert(size < FS_END);
|
||||
extern int _font_height[FS_END];
|
||||
return _font_height[size];
|
||||
}
|
||||
int GetCharacterHeight(FontSize size);
|
||||
|
||||
/** Height of characters in the small (#FS_SMALL) font. */
|
||||
#define FONT_HEIGHT_SMALL (GetCharacterHeight(FS_SMALL))
|
||||
|
581
src/gfx_layout.cpp
Normal file
581
src/gfx_layout.cpp
Normal file
@@ -0,0 +1,581 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file gfx_layout.cpp Handling of laying out text. */
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "gfx_layout.h"
|
||||
#include "string_func.h"
|
||||
#include "strings_func.h"
|
||||
|
||||
#include "table/control_codes.h"
|
||||
|
||||
#ifdef WITH_ICU
|
||||
#include <unicode/ustring.h>
|
||||
#endif /* WITH_ICU */
|
||||
|
||||
|
||||
/** Cache of ParagraphLayout lines. */
|
||||
Layouter::LineCache *Layouter::linecache;
|
||||
|
||||
/** Cache of Font instances. */
|
||||
Layouter::FontColourMap Layouter::fonts[FS_END];
|
||||
|
||||
|
||||
/**
|
||||
* Construct a new font.
|
||||
* @param size The font size to use for this font.
|
||||
* @param colour The colour to draw this font in.
|
||||
*/
|
||||
Font::Font(FontSize size, TextColour colour) :
|
||||
fc(FontCache::Get(size)), colour(colour)
|
||||
{
|
||||
assert(size < FS_END);
|
||||
}
|
||||
|
||||
#ifdef WITH_ICU
|
||||
/* Implementation details of LEFontInstance */
|
||||
|
||||
le_int32 Font::getUnitsPerEM() const
|
||||
{
|
||||
return this->fc->GetUnitsPerEM();
|
||||
}
|
||||
|
||||
le_int32 Font::getAscent() const
|
||||
{
|
||||
return this->fc->GetAscender();
|
||||
}
|
||||
|
||||
le_int32 Font::getDescent() const
|
||||
{
|
||||
return -this->fc->GetDescender();
|
||||
}
|
||||
|
||||
le_int32 Font::getLeading() const
|
||||
{
|
||||
return this->fc->GetHeight();
|
||||
}
|
||||
|
||||
float Font::getXPixelsPerEm() const
|
||||
{
|
||||
return (float)this->fc->GetHeight();
|
||||
}
|
||||
|
||||
float Font::getYPixelsPerEm() const
|
||||
{
|
||||
return (float)this->fc->GetHeight();
|
||||
}
|
||||
|
||||
float Font::getScaleFactorX() const
|
||||
{
|
||||
return 1.0f;
|
||||
}
|
||||
|
||||
float Font::getScaleFactorY() const
|
||||
{
|
||||
return 1.0f;
|
||||
}
|
||||
|
||||
const void *Font::getFontTable(LETag tableTag) const
|
||||
{
|
||||
size_t length;
|
||||
return this->getFontTable(tableTag, length);
|
||||
}
|
||||
|
||||
const void *Font::getFontTable(LETag tableTag, size_t &length) const
|
||||
{
|
||||
return this->fc->GetFontTable(tableTag, length);
|
||||
}
|
||||
|
||||
LEGlyphID Font::mapCharToGlyph(LEUnicode32 ch) const
|
||||
{
|
||||
if (IsTextDirectionChar(ch)) return 0;
|
||||
return this->fc->MapCharToGlyph(ch);
|
||||
}
|
||||
|
||||
void Font::getGlyphAdvance(LEGlyphID glyph, LEPoint &advance) const
|
||||
{
|
||||
advance.fX = glyph == 0xFFFF ? 0 : this->fc->GetGlyphWidth(glyph);
|
||||
advance.fY = 0;
|
||||
}
|
||||
|
||||
le_bool Font::getGlyphPoint(LEGlyphID glyph, le_int32 pointNumber, LEPoint &point) const
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
size_t Layouter::AppendToBuffer(UChar *buff, const UChar *buffer_last, WChar c)
|
||||
{
|
||||
/* Transform from UTF-32 to internal ICU format of UTF-16. */
|
||||
int32 length = 0;
|
||||
UErrorCode err = U_ZERO_ERROR;
|
||||
u_strFromUTF32(buff, buffer_last - buff, &length, (UChar32*)&c, 1, &err);
|
||||
return length;
|
||||
}
|
||||
|
||||
ParagraphLayout *Layouter::GetParagraphLayout(UChar *buff, UChar *buff_end, FontMap &fontMapping)
|
||||
{
|
||||
int32 length = buff_end - buff;
|
||||
|
||||
if (length == 0) {
|
||||
/* ICU's ParagraphLayout cannot handle empty strings, so fake one. */
|
||||
buff[0] = ' ';
|
||||
length = 1;
|
||||
fontMapping.End()[-1].first++;
|
||||
}
|
||||
|
||||
/* Fill ICU's FontRuns with the right data. */
|
||||
FontRuns runs(fontMapping.Length());
|
||||
for (FontMap::iterator iter = fontMapping.Begin(); iter != fontMapping.End(); iter++) {
|
||||
runs.add(iter->second, iter->first);
|
||||
}
|
||||
|
||||
LEErrorCode status = LE_NO_ERROR;
|
||||
/* ParagraphLayout does not copy "buff", so it must stay valid.
|
||||
* "runs" is copied according to the ICU source, but the documentation does not specify anything, so this might break somewhen. */
|
||||
return new ParagraphLayout(buff, length, &runs, NULL, NULL, NULL, _current_text_dir == TD_RTL ? UBIDI_DEFAULT_RTL : UBIDI_DEFAULT_LTR, false, status);
|
||||
}
|
||||
|
||||
#else /* WITH_ICU */
|
||||
|
||||
/*** Paragraph layout ***/
|
||||
|
||||
/**
|
||||
* Create the visual run.
|
||||
* @param font The font to use for this run.
|
||||
* @param chars The characters to use for this run.
|
||||
* @param char_count The number of characters in this run.
|
||||
* @param x The initial x position for this run.
|
||||
*/
|
||||
ParagraphLayout::VisualRun::VisualRun(Font *font, const WChar *chars, int char_count, int x) :
|
||||
font(font), glyph_count(char_count)
|
||||
{
|
||||
this->glyphs = MallocT<GlyphID>(this->glyph_count);
|
||||
|
||||
/* Positions contains the location of the begin of each of the glyphs, and the end of the last one. */
|
||||
this->positions = MallocT<float>(this->glyph_count * 2 + 2);
|
||||
this->positions[0] = x;
|
||||
this->positions[1] = 0;
|
||||
|
||||
for (int i = 0; i < this->glyph_count; i++) {
|
||||
this->glyphs[i] = font->fc->MapCharToGlyph(chars[i]);
|
||||
this->positions[2 * i + 2] = this->positions[2 * i] + font->fc->GetGlyphWidth(this->glyphs[i]);
|
||||
this->positions[2 * i + 3] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/** Free all data. */
|
||||
ParagraphLayout::VisualRun::~VisualRun()
|
||||
{
|
||||
free(this->positions);
|
||||
free(this->glyphs);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the font associated with this run.
|
||||
* @return The font.
|
||||
*/
|
||||
Font *ParagraphLayout::VisualRun::getFont() const
|
||||
{
|
||||
return this->font;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the number of glyhps in this run.
|
||||
* @return The number of glyphs.
|
||||
*/
|
||||
int ParagraphLayout::VisualRun::getGlyphCount() const
|
||||
{
|
||||
return this->glyph_count;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the glyhps of this run.
|
||||
* @return The glyphs.
|
||||
*/
|
||||
const GlyphID *ParagraphLayout::VisualRun::getGlyphs() const
|
||||
{
|
||||
return this->glyphs;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the positions of this run.
|
||||
* @return The positions.
|
||||
*/
|
||||
float *ParagraphLayout::VisualRun::getPositions() const
|
||||
{
|
||||
return this->positions;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the height of this font.
|
||||
* @return The height of the font.
|
||||
*/
|
||||
int ParagraphLayout::VisualRun::getLeading() const
|
||||
{
|
||||
return this->getFont()->fc->GetHeight();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the height of the line.
|
||||
* @return The maximum height of the line.
|
||||
*/
|
||||
int ParagraphLayout::Line::getLeading() const
|
||||
{
|
||||
int leading = 0;
|
||||
for (const VisualRun * const *run = this->Begin(); run != this->End(); run++) {
|
||||
leading = max(leading, (*run)->getLeading());
|
||||
}
|
||||
|
||||
return leading;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the width of this line.
|
||||
* @return The width of the line.
|
||||
*/
|
||||
int ParagraphLayout::Line::getWidth() const
|
||||
{
|
||||
if (this->Length() == 0) return 0;
|
||||
|
||||
/*
|
||||
* The last X position of a run contains is the end of that run.
|
||||
* Since there is no left-to-right support, taking this value of
|
||||
* the last run gives us the end of the line and thus the width.
|
||||
*/
|
||||
const VisualRun *run = this->getVisualRun(this->countRuns() - 1);
|
||||
return run->getPositions()[run->getGlyphCount() * 2];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the number of runs in this line.
|
||||
* @return The number of runs.
|
||||
*/
|
||||
int ParagraphLayout::Line::countRuns() const
|
||||
{
|
||||
return this->Length();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a specific visual run.
|
||||
* @return The visual run.
|
||||
*/
|
||||
ParagraphLayout::VisualRun *ParagraphLayout::Line::getVisualRun(int run) const
|
||||
{
|
||||
return *this->Get(run);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new paragraph layouter.
|
||||
* @param buffer The characters of the paragraph.
|
||||
* @param length The length of the paragraph.
|
||||
* @param runs The font mapping of this paragraph.
|
||||
*/
|
||||
ParagraphLayout::ParagraphLayout(WChar *buffer, int length, FontMap &runs) : buffer_begin(buffer), buffer(buffer), runs(runs)
|
||||
{
|
||||
assert(runs.End()[-1].first == length);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reset the position to the start of the paragraph.
|
||||
*/
|
||||
void ParagraphLayout::reflow()
|
||||
{
|
||||
this->buffer = this->buffer_begin;
|
||||
}
|
||||
|
||||
/**
|
||||
* Construct a new line with a maximum width.
|
||||
* @param max_width The maximum width of the string.
|
||||
* @return A Line, or NULL when at the end of the paragraph.
|
||||
*/
|
||||
ParagraphLayout::Line *ParagraphLayout::nextLine(int max_width)
|
||||
{
|
||||
/* Simple idea:
|
||||
* - split a line at a newline character, or at a space where we can break a line.
|
||||
* - split for a visual run whenever a new line happens, or the font changes.
|
||||
*/
|
||||
if (this->buffer == NULL) return NULL;
|
||||
|
||||
Line *l = new Line();
|
||||
|
||||
if (*this->buffer == '\0') {
|
||||
/* Only a newline. */
|
||||
this->buffer = NULL;
|
||||
*l->Append() = new VisualRun(this->runs.Begin()->second, this->buffer, 0, 0);
|
||||
return l;
|
||||
}
|
||||
|
||||
const WChar *begin = this->buffer;
|
||||
const WChar *last_space = NULL;
|
||||
const WChar *last_char = begin;
|
||||
int width = 0;
|
||||
|
||||
int offset = this->buffer - this->buffer_begin;
|
||||
FontMap::iterator iter = this->runs.Begin();
|
||||
while (iter->first <= offset) {
|
||||
iter++;
|
||||
assert(iter != this->runs.End());
|
||||
}
|
||||
|
||||
const FontCache *fc = iter->second->fc;
|
||||
const WChar *next_run = this->buffer_begin + iter->first;
|
||||
|
||||
for (;;) {
|
||||
WChar c = *this->buffer;
|
||||
last_char = this->buffer;
|
||||
|
||||
if (c == '\0') {
|
||||
this->buffer = NULL;
|
||||
break;
|
||||
}
|
||||
|
||||
if (this->buffer == next_run) {
|
||||
int w = l->getWidth();
|
||||
*l->Append() = new VisualRun(iter->second, begin, this->buffer - begin, w);
|
||||
iter++;
|
||||
assert(iter != this->runs.End());
|
||||
|
||||
next_run = this->buffer_begin + iter->first;
|
||||
begin = this->buffer;
|
||||
|
||||
last_space = NULL;
|
||||
}
|
||||
|
||||
if (IsWhitespace(c)) last_space = this->buffer;
|
||||
|
||||
if (IsPrintable(c) && !IsTextDirectionChar(c)) {
|
||||
int char_width = GetCharacterWidth(fc->GetSize(), c);
|
||||
width += char_width;
|
||||
if (width > max_width) {
|
||||
/* The string is longer than maximum width so we need to decide
|
||||
* what to do with it. */
|
||||
if (width == char_width) {
|
||||
/* The character is wider than allowed width; don't know
|
||||
* what to do with this case... bail out! */
|
||||
this->buffer = NULL;
|
||||
return l;
|
||||
}
|
||||
|
||||
if (last_space == NULL) {
|
||||
/* No space has been found. Just terminate at our current
|
||||
* location. This usually happens for languages that do not
|
||||
* require spaces in strings, like Chinese, Japanese and
|
||||
* Korean. For other languages terminating mid-word might
|
||||
* not be the best, but terminating the whole string instead
|
||||
* of continuing the word at the next line is worse. */
|
||||
last_char = this->buffer;
|
||||
} else {
|
||||
/* A space is found; perfect place to terminate */
|
||||
this->buffer = last_space + 1;
|
||||
last_char = last_space;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
this->buffer++;
|
||||
}
|
||||
|
||||
if (l->Length() == 0 || last_char - begin != 0) {
|
||||
int w = l->getWidth();
|
||||
*l->Append() = new VisualRun(iter->second, begin, last_char - begin, w);
|
||||
}
|
||||
return l;
|
||||
}
|
||||
|
||||
/**
|
||||
* Appand a wide character to the internal buffer.
|
||||
* @param buff The buffer to append to.
|
||||
* @param buffer_last The end of the buffer.
|
||||
* @param c The character to add.
|
||||
* @return The number of buffer spaces that were used.
|
||||
*/
|
||||
size_t Layouter::AppendToBuffer(WChar *buff, const WChar *buffer_last, WChar c)
|
||||
{
|
||||
*buff = c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the actual ParagraphLayout for the given buffer.
|
||||
* @param buff The begin of the buffer.
|
||||
* @param buff_end The location after the last element in the buffer.
|
||||
* @param fontMapping THe mapping of the fonts.
|
||||
* @return The ParagraphLayout instance.
|
||||
*/
|
||||
ParagraphLayout *Layouter::GetParagraphLayout(WChar *buff, WChar *buff_end, FontMap &fontMapping)
|
||||
{
|
||||
return new ParagraphLayout(buff, buff_end - buff, fontMapping);
|
||||
}
|
||||
#endif /* !WITH_ICU */
|
||||
|
||||
/**
|
||||
* Create a new layouter.
|
||||
* @param str The string to create the layout for.
|
||||
* @param maxw The maximum width.
|
||||
* @param colour The colour of the font.
|
||||
* @param fontsize The size of font to use.
|
||||
*/
|
||||
Layouter::Layouter(const char *str, int maxw, TextColour colour, FontSize fontsize)
|
||||
{
|
||||
FontState state(colour, fontsize);
|
||||
WChar c = 0;
|
||||
|
||||
do {
|
||||
/* Scan string for end of line */
|
||||
const char *lineend = str;
|
||||
for (;;) {
|
||||
size_t len = Utf8Decode(&c, lineend);
|
||||
if (c == '\0' || c == '\n') break;
|
||||
lineend += len;
|
||||
}
|
||||
|
||||
LineCacheItem& line = GetCachedParagraphLayout(str, lineend - str, state);
|
||||
if (line.layout != NULL) {
|
||||
/* Line is in cache */
|
||||
str = lineend + 1;
|
||||
state = line.state_after;
|
||||
line.layout->reflow();
|
||||
} else {
|
||||
/* Line is new, layout it */
|
||||
const CharType *buffer_last = lastof(line.buffer);
|
||||
CharType *buff_begin = line.buffer;
|
||||
CharType *buff = buff_begin;
|
||||
FontMap &fontMapping = line.runs;
|
||||
Font *f = GetFont(state.fontsize, state.cur_colour);
|
||||
|
||||
/*
|
||||
* Go through the whole string while adding Font instances to the font map
|
||||
* whenever the font changes, and convert the wide characters into a format
|
||||
* usable by ParagraphLayout.
|
||||
*/
|
||||
for (; buff < buffer_last;) {
|
||||
c = Utf8Consume(const_cast<const char **>(&str));
|
||||
if (c == '\0' || c == '\n') {
|
||||
break;
|
||||
} else if (c >= SCC_BLUE && c <= SCC_BLACK) {
|
||||
state.SetColour((TextColour)(c - SCC_BLUE));
|
||||
} else if (c == SCC_PREVIOUS_COLOUR) { // Revert to the previous colour.
|
||||
state.SetPreviousColour();
|
||||
} else if (c == SCC_TINYFONT) {
|
||||
state.SetFontSize(FS_SMALL);
|
||||
} else if (c == SCC_BIGFONT) {
|
||||
state.SetFontSize(FS_LARGE);
|
||||
} else {
|
||||
buff += AppendToBuffer(buff, buffer_last, c);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!fontMapping.Contains(buff - buff_begin)) {
|
||||
fontMapping.Insert(buff - buff_begin, f);
|
||||
}
|
||||
f = GetFont(state.fontsize, state.cur_colour);
|
||||
}
|
||||
|
||||
/* Better safe than sorry. */
|
||||
*buff = '\0';
|
||||
|
||||
if (!fontMapping.Contains(buff - buff_begin)) {
|
||||
fontMapping.Insert(buff - buff_begin, f);
|
||||
}
|
||||
line.layout = GetParagraphLayout(buff_begin, buff, fontMapping);
|
||||
line.state_after = state;
|
||||
}
|
||||
|
||||
/* Copy all lines into a local cache so we can reuse them later on more easily. */
|
||||
ParagraphLayout::Line *l;
|
||||
while ((l = line.layout->nextLine(maxw)) != NULL) {
|
||||
*this->Append() = l;
|
||||
}
|
||||
|
||||
} while (c != '\0');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the boundaries of this paragraph.
|
||||
* @return The boundaries.
|
||||
*/
|
||||
Dimension Layouter::GetBounds()
|
||||
{
|
||||
Dimension d = { 0, 0 };
|
||||
for (ParagraphLayout::Line **l = this->Begin(); l != this->End(); l++) {
|
||||
d.width = max<uint>(d.width, (*l)->getWidth());
|
||||
d.height += (*l)->getLeading();
|
||||
}
|
||||
return d;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a static font instance.
|
||||
*/
|
||||
Font *Layouter::GetFont(FontSize size, TextColour colour)
|
||||
{
|
||||
FontColourMap::iterator it = fonts[size].Find(colour);
|
||||
if (it != fonts[size].End()) return it->second;
|
||||
|
||||
Font *f = new Font(size, colour);
|
||||
*fonts[size].Append() = FontColourMap::Pair(colour, f);
|
||||
return f;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reset cached font information.
|
||||
* @param size Font size to reset.
|
||||
*/
|
||||
void Layouter::ResetFontCache(FontSize size)
|
||||
{
|
||||
for (FontColourMap::iterator it = fonts[size].Begin(); it != fonts[size].End(); ++it) {
|
||||
delete it->second;
|
||||
}
|
||||
fonts[size].Clear();
|
||||
|
||||
/* We must reset the linecache since it references the just freed fonts */
|
||||
ResetLineCache();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get reference to cache item.
|
||||
* If the item does not exist yet, it is default constructed.
|
||||
* @param str Source string of the line (including colour and font size codes).
|
||||
* @param len Length of \a str in bytes (no termination).
|
||||
* @param state State of the font at the beginning of the line.
|
||||
* @return Reference to cache item.
|
||||
*/
|
||||
Layouter::LineCacheItem &Layouter::GetCachedParagraphLayout(const char *str, size_t len, const FontState &state)
|
||||
{
|
||||
if (linecache == NULL) {
|
||||
/* Create linecache on first access to avoid trouble with initialisation order of static variables. */
|
||||
linecache = new LineCache();
|
||||
}
|
||||
|
||||
LineCacheKey key;
|
||||
key.state_before = state;
|
||||
key.str.assign(str, len);
|
||||
return (*linecache)[key];
|
||||
}
|
||||
|
||||
/**
|
||||
* Clear line cache.
|
||||
*/
|
||||
void Layouter::ResetLineCache()
|
||||
{
|
||||
if (linecache != NULL) linecache->clear();
|
||||
}
|
||||
|
||||
/**
|
||||
* Reduce the size of linecache if necessary to prevent infinite growth.
|
||||
*/
|
||||
void Layouter::ReduceLineCache()
|
||||
{
|
||||
if (linecache != NULL) {
|
||||
/* TODO LRU cache would be fancy, but not exactly necessary */
|
||||
if (linecache->size() > 4096) ResetLineCache();
|
||||
}
|
||||
}
|
218
src/gfx_layout.h
Normal file
218
src/gfx_layout.h
Normal file
@@ -0,0 +1,218 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file gfx_layout.h Functions related to laying out the texts. */
|
||||
|
||||
#ifndef GFX_LAYOUT_H
|
||||
#define GFX_LAYOUT_H
|
||||
|
||||
#include "fontcache.h"
|
||||
#include "gfx_func.h"
|
||||
#include "core/smallmap_type.hpp"
|
||||
|
||||
#include <map>
|
||||
#include <string>
|
||||
|
||||
#ifdef WITH_ICU
|
||||
#include "layout/ParagraphLayout.h"
|
||||
#define ICU_FONTINSTANCE : public LEFontInstance
|
||||
#else /* WITH_ICU */
|
||||
#define ICU_FONTINSTANCE
|
||||
#endif /* WITH_ICU */
|
||||
|
||||
/**
|
||||
* Text drawing parameters, which can change while drawing a line, but are kept between multiple parts
|
||||
* of the same text, e.g. on line breaks.
|
||||
*/
|
||||
struct FontState {
|
||||
FontSize fontsize; ///< Current font size.
|
||||
TextColour cur_colour; ///< Current text colour.
|
||||
TextColour prev_colour; ///< Text colour from before the last colour switch.
|
||||
|
||||
FontState() : fontsize(FS_END), cur_colour(TC_INVALID), prev_colour(TC_INVALID) {}
|
||||
FontState(TextColour colour, FontSize fontsize) : fontsize(fontsize), cur_colour(colour), prev_colour(colour) {}
|
||||
|
||||
/**
|
||||
* Switch to new colour \a c.
|
||||
* @param c New colour to use.
|
||||
*/
|
||||
inline void SetColour(TextColour c)
|
||||
{
|
||||
assert(c >= TC_BLUE && c <= TC_BLACK);
|
||||
this->prev_colour = this->cur_colour;
|
||||
this->cur_colour = c;
|
||||
}
|
||||
|
||||
/** Switch to previous colour. */
|
||||
inline void SetPreviousColour()
|
||||
{
|
||||
Swap(this->cur_colour, this->prev_colour);
|
||||
}
|
||||
|
||||
/**
|
||||
* Switch to using a new font \a f.
|
||||
* @param f New font to use.
|
||||
*/
|
||||
inline void SetFontSize(FontSize f)
|
||||
{
|
||||
this->fontsize = f;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Container with information about a font.
|
||||
*/
|
||||
class Font ICU_FONTINSTANCE {
|
||||
public:
|
||||
FontCache *fc; ///< The font we are using.
|
||||
TextColour colour; ///< The colour this font has to be.
|
||||
|
||||
Font(FontSize size, TextColour colour);
|
||||
|
||||
#ifdef WITH_ICU
|
||||
/* Implementation details of LEFontInstance */
|
||||
|
||||
le_int32 getUnitsPerEM() const;
|
||||
le_int32 getAscent() const;
|
||||
le_int32 getDescent() const;
|
||||
le_int32 getLeading() const;
|
||||
float getXPixelsPerEm() const;
|
||||
float getYPixelsPerEm() const;
|
||||
float getScaleFactorX() const;
|
||||
float getScaleFactorY() const;
|
||||
const void *getFontTable(LETag tableTag) const;
|
||||
const void *getFontTable(LETag tableTag, size_t &length) const;
|
||||
LEGlyphID mapCharToGlyph(LEUnicode32 ch) const;
|
||||
void getGlyphAdvance(LEGlyphID glyph, LEPoint &advance) const;
|
||||
le_bool getGlyphPoint(LEGlyphID glyph, le_int32 pointNumber, LEPoint &point) const;
|
||||
#endif /* WITH_ICU */
|
||||
};
|
||||
|
||||
/** Mapping from index to font. */
|
||||
typedef SmallMap<int, Font *> FontMap;
|
||||
|
||||
#ifndef WITH_ICU
|
||||
/**
|
||||
* Class handling the splitting of a paragraph of text into lines and
|
||||
* visual runs.
|
||||
*
|
||||
* One constructs this class with the text that needs to be split into
|
||||
* lines. Then nextLine is called with the maximum width until NULL is
|
||||
* returned. Each nextLine call creates VisualRuns which contain the
|
||||
* length of text that are to be drawn with the same font. In other
|
||||
* words, the result of this class is a list of sub strings with their
|
||||
* font. The sub strings are then already fully laid out, and only
|
||||
* need actual drawing.
|
||||
*
|
||||
* The positions in a visual run are sequential pairs of X,Y of the
|
||||
* begin of each of the glyphs plus an extra pair to mark the end.
|
||||
*
|
||||
* @note This variant does not handle left-to-right properly. This
|
||||
* is supported in the one ParagraphLayout coming from ICU.
|
||||
* @note Does not conform to function naming style as it provides a
|
||||
* fallback for the ICU class.
|
||||
*/
|
||||
class ParagraphLayout {
|
||||
public:
|
||||
/** Visual run contains data about the bit of text with the same font. */
|
||||
class VisualRun {
|
||||
Font *font; ///< The font used to layout these.
|
||||
GlyphID *glyphs; ///< The glyphs we're drawing.
|
||||
float *positions; ///< The positions of the glyphs.
|
||||
int glyph_count; ///< The number of glyphs.
|
||||
|
||||
public:
|
||||
VisualRun(Font *font, const WChar *chars, int glyph_count, int x);
|
||||
~VisualRun();
|
||||
Font *getFont() const;
|
||||
int getGlyphCount() const;
|
||||
const GlyphID *getGlyphs() const;
|
||||
float *getPositions() const;
|
||||
int getLeading() const;
|
||||
};
|
||||
|
||||
/** A single line worth of VisualRuns. */
|
||||
class Line : public AutoDeleteSmallVector<VisualRun *, 4> {
|
||||
public:
|
||||
int getLeading() const;
|
||||
int getWidth() const;
|
||||
int countRuns() const;
|
||||
VisualRun *getVisualRun(int run) const;
|
||||
};
|
||||
|
||||
const WChar *buffer_begin; ///< Begin of the buffer.
|
||||
const WChar *buffer; ///< The current location in the buffer.
|
||||
FontMap &runs; ///< The fonts we have to use for this paragraph.
|
||||
|
||||
ParagraphLayout(WChar *buffer, int length, FontMap &runs);
|
||||
void reflow();
|
||||
Line *nextLine(int max_width);
|
||||
};
|
||||
#endif /* !WITH_ICU */
|
||||
|
||||
/**
|
||||
* The layouter performs all the layout work.
|
||||
*
|
||||
* It also accounts for the memory allocations and frees.
|
||||
*/
|
||||
class Layouter : public AutoDeleteSmallVector<ParagraphLayout::Line *, 4> {
|
||||
#ifdef WITH_ICU
|
||||
typedef UChar CharType; ///< The type of character used within the layouter.
|
||||
#else /* WITH_ICU */
|
||||
typedef WChar CharType; ///< The type of character used within the layouter.
|
||||
#endif /* WITH_ICU */
|
||||
|
||||
size_t AppendToBuffer(CharType *buff, const CharType *buffer_last, WChar c);
|
||||
ParagraphLayout *GetParagraphLayout(CharType *buff, CharType *buff_end, FontMap &fontMapping);
|
||||
|
||||
/** Key into the linecache */
|
||||
struct LineCacheKey {
|
||||
FontState state_before; ///< Font state at the beginning of the line.
|
||||
std::string str; ///< Source string of the line (including colour and font size codes).
|
||||
|
||||
/** Comparison operator for std::map */
|
||||
bool operator<(const LineCacheKey &other) const
|
||||
{
|
||||
if (this->state_before.fontsize != other.state_before.fontsize) return this->state_before.fontsize < other.state_before.fontsize;
|
||||
if (this->state_before.cur_colour != other.state_before.cur_colour) return this->state_before.cur_colour < other.state_before.cur_colour;
|
||||
if (this->state_before.prev_colour != other.state_before.prev_colour) return this->state_before.prev_colour < other.state_before.prev_colour;
|
||||
return this->str < other.str;
|
||||
}
|
||||
};
|
||||
/** Item in the linecache */
|
||||
struct LineCacheItem {
|
||||
/* Stuff that cannot be freed until the ParagraphLayout is freed */
|
||||
CharType buffer[DRAW_STRING_BUFFER]; ///< Accessed by both ICU's and our ParagraphLayout::nextLine.
|
||||
FontMap runs; ///< Accessed by our ParagraphLayout::nextLine.
|
||||
|
||||
FontState state_after; ///< Font state after the line.
|
||||
ParagraphLayout *layout; ///< Layout of the line.
|
||||
|
||||
LineCacheItem() : layout(NULL) {}
|
||||
~LineCacheItem() { delete layout; }
|
||||
};
|
||||
typedef std::map<LineCacheKey, LineCacheItem> LineCache;
|
||||
static LineCache *linecache;
|
||||
|
||||
static LineCacheItem &GetCachedParagraphLayout(const char *str, size_t len, const FontState &state);
|
||||
|
||||
typedef SmallMap<TextColour, Font *> FontColourMap;
|
||||
static FontColourMap fonts[FS_END];
|
||||
static Font *GetFont(FontSize size, TextColour colour);
|
||||
|
||||
public:
|
||||
Layouter(const char *str, int maxw = INT32_MAX, TextColour colour = TC_FROMSTRING, FontSize fontsize = FS_NORMAL);
|
||||
Dimension GetBounds();
|
||||
|
||||
static void ResetFontCache(FontSize size);
|
||||
static void ResetLineCache();
|
||||
static void ReduceLineCache();
|
||||
};
|
||||
|
||||
#endif /* GFX_LAYOUT_H */
|
@@ -504,7 +504,7 @@ public:
|
||||
}
|
||||
} else {
|
||||
/* Draw the label under the data point rather than on the grid line. */
|
||||
SetDParamMaxValue(0, this->x_values_start + this->num_on_x_axis * this->x_values_increment);
|
||||
SetDParamMaxValue(0, this->x_values_start + this->num_on_x_axis * this->x_values_increment, 0, FS_SMALL);
|
||||
x_label_width = GetStringBoundingBox(STR_GRAPH_Y_LABEL_NUMBER).width;
|
||||
}
|
||||
|
||||
|
@@ -182,7 +182,7 @@ private:
|
||||
}
|
||||
this->tiny_step_height = max(this->tiny_step_height, this->column_size[VGC_PROFIT].height);
|
||||
|
||||
SetDParamMaxValue(0, GroupStatistics::Get(this->vli.company, ALL_GROUP, this->vli.vtype).num_vehicle, 3);
|
||||
SetDParamMaxValue(0, GroupStatistics::Get(this->vli.company, ALL_GROUP, this->vli.vtype).num_vehicle, 3, FS_SMALL);
|
||||
this->column_size[VGC_NUMBER] = GetStringBoundingBox(STR_TINY_COMMA);
|
||||
this->tiny_step_height = max(this->tiny_step_height, this->column_size[VGC_NUMBER].height);
|
||||
|
||||
|
@@ -172,7 +172,7 @@ void LoadFromHighScore()
|
||||
i = SP_SAVED_HIGHSCORE_END;
|
||||
break;
|
||||
}
|
||||
*lastof(hs->company) = '\0';
|
||||
str_validate(hs->company, lastof(hs->company), SVS_NONE);
|
||||
hs->title = EndGameGetPerformanceTitleFromValue(hs->score);
|
||||
}
|
||||
}
|
||||
|
@@ -17,9 +17,14 @@
|
||||
#include "settings_type.h"
|
||||
|
||||
struct HighScore {
|
||||
char company[100];
|
||||
/**
|
||||
* The name of the company and president.
|
||||
* The + 5 is for the comma and space or possibly other characters
|
||||
* that join the two names in this single string and the '\0'.
|
||||
*/
|
||||
char company[(MAX_LENGTH_COMPANY_NAME_CHARS + MAX_LENGTH_PRESIDENT_NAME_CHARS + 5) * MAX_CHAR_LENGTH];
|
||||
StringID title; ///< NOSAVE, has troubles with changing string-numbers.
|
||||
uint16 score; ///< do NOT change type, will break hs.dat
|
||||
uint16 score; ///< The score for this high score. Do NOT change type, will break hs.dat
|
||||
};
|
||||
|
||||
extern HighScore _highscore_table[SP_HIGHSCORE_END][5];
|
||||
|
@@ -190,7 +190,8 @@ struct HighScoreWindow : EndGameHighScoreBaseWindow {
|
||||
if (hs[i].company[0] != '\0') {
|
||||
TextColour colour = (this->rank == i) ? TC_RED : TC_BLACK; // draw new highscore in red
|
||||
|
||||
DrawString(pt.x + 71, pt.x + 569, pt.y + 140 + (i * 55), hs[i].company, colour);
|
||||
SetDParamStr(0, hs[i].company);
|
||||
DrawString(pt.x + 71, pt.x + 569, pt.y + 140 + (i * 55), STR_JUST_BIG_RAW_STRING, colour);
|
||||
SetDParam(0, hs[i].title);
|
||||
SetDParam(1, hs[i].score);
|
||||
DrawString(pt.x + 71, pt.x + 569, pt.y + 140 + FONT_HEIGHT_LARGE + (i * 55), STR_HIGHSCORE_STATS, colour);
|
||||
|
@@ -218,6 +218,7 @@ STR_UNITS_HEIGHT_IMPERIAL :{COMMA} vt
|
||||
STR_UNITS_HEIGHT_SI :{COMMA} m
|
||||
|
||||
# Common window strings
|
||||
STR_LIST_FILTER_TITLE :{BLACK}Filter string:
|
||||
STR_LIST_FILTER_OSKTITLE :{BLACK}Sleutel filter string in
|
||||
STR_LIST_FILTER_TOOLTIP :{BLACK}Tik 'n sleutelwoord in om die lys te filter
|
||||
|
||||
@@ -371,15 +372,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Verlaat
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Kaart van wêreld
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Ekstra gesigswerf
|
||||
STR_MAP_MENU_SIGN_LIST :Teken lys
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Dorp gids
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Stig dorp
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subsidies
|
||||
@@ -398,10 +399,12 @@ STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Vrag vergoeding
|
||||
############ range for company league menu starts
|
||||
STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :Maatskappy verbond tabel
|
||||
STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Omstandig prestasie gradering
|
||||
STR_GRAPH_MENU_HIGHSCORE :Hoogste tellings tafel
|
||||
############ range ends here
|
||||
|
||||
############ range for industry menu starts
|
||||
STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :Nywerheid Gids
|
||||
STR_INDUSTRY_MENU_INDUSTRY_CHAIN :Nywerheidsskakels
|
||||
STR_INDUSTRY_MENU_FUND_NEW_INDUSTRY :Konsolideer nuwe nywerheid
|
||||
############ range ends here
|
||||
|
||||
@@ -611,7 +614,7 @@ STR_MUSIC_TRACK :{TINY_FONT}{BLA
|
||||
STR_MUSIC_XTITLE :{TINY_FONT}{BLACK}Titel
|
||||
STR_MUSIC_SHUFFLE :{TINY_FONT}{BLACK}Skommel
|
||||
STR_MUSIC_PROGRAM :{TINY_FONT}{BLACK}Musiek lys
|
||||
STR_MUSIC_TOOLTIP_SKIP_TO_PREVIOUS_TRACK :{BLACK}Gaan terug na vorig liedjie in seleksie
|
||||
STR_MUSIC_TOOLTIP_SKIP_TO_PREVIOUS_TRACK :{BLACK}Gaan terug na vorige liedjie in keuse-lys
|
||||
STR_MUSIC_TOOLTIP_SKIP_TO_NEXT_TRACK_IN_SELECTION :{BLACK}Gaan na volgende liedjie in seleksie
|
||||
STR_MUSIC_TOOLTIP_STOP_PLAYING_MUSIC :{BLACK}Hou op musiek speel
|
||||
STR_MUSIC_TOOLTIP_START_PLAYING_MUSIC :{BLACK}Begin musiek speel
|
||||
@@ -648,7 +651,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalis
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnaat
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Magnaat
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Magnaat van die Eeu
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} behaal '{STRING}' status!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} van {COMPANY} behaal '{STRING}' status!
|
||||
@@ -1040,6 +1043,9 @@ STR_WARNING_NO_SUITABLE_AI :{WHITE}Geen ges
|
||||
|
||||
# Advanced settings window
|
||||
STR_CONFIG_SETTING_CAPTION :{WHITE}Gevorderde 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
|
||||
STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(geen verduideliking beskikbaar)
|
||||
STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Standaard waarde: {ORANGE}{STRING}
|
||||
STR_CONFIG_SETTING_TYPE :{LTBLUE}Stelling tipe: {ORANGE}{STRING}
|
||||
@@ -1050,6 +1056,12 @@ STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Maatskappy inst
|
||||
STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Maatskappy instelling (word gestoor in spaarspeletjie; raak net die huidige maatskappy)
|
||||
|
||||
STR_CONFIG_SETTING_RESTRICT_LABEL :{BLACK}Vertoon:
|
||||
STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Beperk die lys hier onder tot 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_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
|
||||
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Beperk die lys hieronder tot net sekere instelling tiepes
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Alle instellings
|
||||
@@ -1075,6 +1087,24 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT :Links
|
||||
STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Senter
|
||||
STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Regs
|
||||
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maksimum aanvanklike lening: {STRING}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maksimum bedrag wat 'n maatskappy kan leen (sonder die inagneming van inflasie)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Rentekoers: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Lening rentekoers: beheer ook inflasie indien aangeskakel
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Bedryfskostes: {STRING}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Verstel die vlak van instandhouding en bedryfskoste van voertuie en infrastruktuur
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Konstruksie spoed: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Beperk die hoeveelheid konstruksie aksies vir die AIs
|
||||
STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Voertuig onklaarrakings: {STRING}
|
||||
STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Beheer hoe gereeld voertuie breek as hulle in 'n toestand van swak instandhouding verkeer
|
||||
STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Subsidie vermenigvuldiger: {STRING}
|
||||
STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Verstel hoeveel is betaalbaar vir gesubsidieerde aansluitings
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Konstruksie kostes: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Verstel die vlak van konstruksie en aankoop-kostes
|
||||
STR_CONFIG_SETTING_RECESSIONS :Resessies: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Verhoed dat treine kan omdraai in stasies: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS :Rampe: {STRING}
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :Stadsraad se gesindheid teenoor omgewings-konstruksie: {STRING}
|
||||
|
||||
STR_CONFIG_SETTING_BUILDONSLOPES :Laat bou op skuinstes en kuslyn toe: {STRING}
|
||||
STR_CONFIG_SETTING_BUILDONSLOPES_HELPTEXT :As geaktiveer, kan spore en stasies op meeste hellings gebou word. Indien gedeaktiveer, kan hulle net gebou work op hellings wat die rigting van die spoor volg, en dus geen fondasies verg nie
|
||||
@@ -1141,6 +1171,9 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_QUEUEING :Pad voertuig to
|
||||
STR_CONFIG_SETTING_ROAD_VEHICLE_QUEUEING_HELPTEXT :Maak 'n pad voertuig wag by besette padstoppe totdat hulle leeg is
|
||||
STR_CONFIG_SETTING_AUTOSCROLL :Rol skerm as muis by die kant is: {STRING}
|
||||
STR_CONFIG_SETTING_AUTOSCROLL_DISABLED :Gedeaktiveer
|
||||
STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Hoof skerm, slegs volskerm
|
||||
STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Hoof skerm
|
||||
STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Elke skerm
|
||||
STR_CONFIG_SETTING_BRIBE :Laat omkooping van die plaaslike raad toe: {STRING}
|
||||
STR_CONFIG_SETTING_BRIBE_HELPTEXT :Laat maatskappye die plaaslike dorpsraad probeer omkoop. Indien 'n inspekteur die omkoopgeld opgemerk, sal die maatskappy nie in staat wees om in die dorp te werk vir ses maande.
|
||||
STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Laat die koop van eksklusief vervoer regte toe: {STRING}
|
||||
@@ -1251,6 +1284,10 @@ STR_CONFIG_SETTING_SCROLLWHEEL_SCROLL :Rol kaart
|
||||
STR_CONFIG_SETTING_SCROLLWHEEL_OFF :Af
|
||||
STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Kaart rolwiel spoed: {STRING}
|
||||
STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Kontroleer die sensitiwiteit van die muis-wiel "scrolling"
|
||||
STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Gedeaktiveer
|
||||
STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Dubbel-kliek
|
||||
STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Enkel kliek (indien geselekteerd)
|
||||
STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Enkel kliek (dadelik)
|
||||
|
||||
STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Regs-kliek emulasie: {STRING}
|
||||
STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT :selekteer die metode om the regter muis-knoppie kliek te emuleer
|
||||
@@ -1293,6 +1330,7 @@ STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :Meeste gebruik
|
||||
STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Wys gereserveerde spore: {STRING}
|
||||
STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Hou bou gereedskap aktief na gebruik: {STRING}
|
||||
STR_CONFIG_SETTING_EXPENSES_LAYOUT :Groep uitgawes in maatskappy finansies venster: {STRING}
|
||||
STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Verstel die uitleg van die maatskappy uitgawes venster
|
||||
|
||||
STR_CONFIG_SETTING_SOUND_TICKER :Nuustikker: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Speel klank vir opgesomde nuus boodskappe
|
||||
@@ -1322,14 +1360,23 @@ STR_CONFIG_SETTING_MAX_SHIPS :Max skepe per s
|
||||
STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Maksimum hoeveelheid bote was 'n besigheid kan hê
|
||||
|
||||
STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Sper treine vir rekenaar: {STRING}
|
||||
STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT :Aktiveer om te verhoed dat die rekenaar speler kan treine bou
|
||||
STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES :Sper pad voertuie vir rekenaar: {STRING}
|
||||
STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT :Aktiveer om te verhoed dat die rekenaar speler kan pad voertuie bou
|
||||
STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT :Sper vliegtuie vir rekenaar: {STRING}
|
||||
STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT :Aktiveer om te verhoed dat die rekenaar speler kan vliegtuie bou
|
||||
STR_CONFIG_SETTING_AI_BUILDS_SHIPS :Sper skepe vir rekenaar: {STRING}
|
||||
STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT :Aktiveer om te verhoed dat die rekenaar speler kan skepe bou
|
||||
|
||||
STR_CONFIG_SETTING_AI_PROFILE :Verstek verstellings profiel: {STRING}
|
||||
STR_CONFIG_SETTING_AI_PROFILE_EASY :Maklik
|
||||
STR_CONFIG_SETTING_AI_PROFILE_MEDIUM :Middelmatig
|
||||
STR_CONFIG_SETTING_AI_PROFILE_HARD :Moeilik
|
||||
|
||||
STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Laat AI in multispeler toe: {STRING}
|
||||
STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Laat AI Rekenaaar spelers by 'n multi-speler spel toe
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes voor die skripte gestaak word: {STRING}
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Die maksimum hoeveelheid berekeningstappe wat 'n skrip kan vat in een beurt
|
||||
|
||||
STR_CONFIG_SETTING_SERVINT_ISPERCENT :Diens pouse is in persente: {STRING}
|
||||
STR_CONFIG_SETTING_SERVINT_TRAINS :Standaard diens interval vir treine: {STRING}
|
||||
@@ -1343,14 +1390,23 @@ STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Laat wa spoed b
|
||||
STR_CONFIG_SETTING_DISABLE_ELRAILS :Deaktiveer elektriese spoore: {STRING}
|
||||
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :Aankoms van eerste voertuig by speler se stasie: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Vertoon 'n koerantberig waneer die eerste voertuig by 'n nuwe speler se stasie arriveer
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Aankoms van eerste voertuig by mededinger se stasie: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Vertoon 'n koerantberig waneer die eerste voertuig by 'n nuwe teenstander se stasie arriveer
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Ongelukke / rampe: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Vertoon 'n koerantberig wanneer daar ongelukke of natuurrampe voorkom
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Maatskappy informasie: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Vertoon 'n koerantberig wanneer 'n nuwe maatskappy begin, of wanneer 'n maatskappy in gevaar is om bankkrot te speel
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Opening van industrieë: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT :Vertoon die koerant wanneer 'n nuwe nywerheid oopmaak
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE :Toemaak van industrieë: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT :Vertoon die koerant wanneer 'n nywerheid toemaak
|
||||
STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES :Ekonomie veranderings: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT :Vertoon die koerant vir enige globale veranderinge aan die ekonomie
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :Verandering in produksie van industrieë voorsien deur die maatskapy: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :Vertoon die koerant indien enige produksie vlakke van nywerhede bedien deur die maatskappy verander
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :Produksie veranderings van nywerhede wat deur mededingers bedien word: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :Vertoon die koerant indien enige produksie vlakke van nywerhede bedien deur die kompetisie verander
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Ander nywerheid produksie veranderings: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Vertoon 'n koerant wanner die produksievlak van industriëe verander, wat nie tans bedien word deur die maatskappy of kompeteerders nie
|
||||
STR_CONFIG_SETTING_NEWS_ADVICE :Advies / informasie van maatskappy se voertuie: {STRING}
|
||||
@@ -1369,6 +1425,7 @@ STR_CONFIG_SETTING_NEWS_MESSAGES_SUMMARY :Opsomming
|
||||
STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :Vol
|
||||
|
||||
STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Gekleurde nuus verskyn in: {STRING}
|
||||
STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :In watter jaar begin koerante in kleur vertoon. Voor dit is hulle swart en wit.
|
||||
STR_CONFIG_SETTING_STARTING_YEAR :Jaar om te begin: {STRING}
|
||||
STR_CONFIG_SETTING_SMOOTH_ECONOMY :Aktiveer geleike ekonomie (meer, kleiner veranderings): {STRING}
|
||||
STR_CONFIG_SETTING_ALLOW_SHARES :Laat die koop van aandeele van ander maatskappye toe: {STRING}
|
||||
@@ -1503,6 +1560,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... save
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoreer Basis Grafiek stel '{STRING}': nie gevind nie
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignoreer Basis Klank stel '{STRING}': nie gevind nie
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoreer Basis Musiek stel '{STRING}': nie gevind
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Program is uit geheue uit
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Allokering van {BYTES} kasgeheue vir grafika het gefaal. Die kasgeheue is verminder na {BYTES}. Dit sal OpenTDD stadiger maak. Om geheue-aanvraag te verminder, kan u 32bpp grafika en/of zoom-vlakke afskakel.
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -1515,6 +1574,7 @@ STR_INTRO_SCENARIO_EDITOR :{BLACK}Scenario
|
||||
STR_INTRO_MULTIPLAYER :{BLACK}Multispeler
|
||||
|
||||
STR_INTRO_GAME_OPTIONS :{BLACK}Spel Opsies
|
||||
STR_INTRO_HIGHSCORE :{BLACK}Hoogste Tellings Tafel
|
||||
STR_INTRO_ADVANCED_SETTINGS :{BLACK}Gevorderde stellings
|
||||
STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Stellings
|
||||
STR_INTRO_ONLINE_CONTENT :{BLACK}Kyk Na Aanlyn Inhoud
|
||||
@@ -1534,6 +1594,7 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Kies 'su
|
||||
STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Kies 'speelgoedland' landskap styl
|
||||
|
||||
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_NEWGRF_SETTINGS :{BLACK}Wys NewGRF stellings
|
||||
STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kyk vir nuwe of bygewerkde inhoud om af te laai
|
||||
@@ -1979,6 +2040,8 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Selektee
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Merk alle inhoud wat 'n opgradering is vir bestande inhoud om af te laai word
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Onselekteer alles
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Merk alle inhoud wat nie afgelaai moet word nie
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Soek deur eksterne webwerwe
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Jy gaan OpenTDD verlaat!
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Merker/naam filter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Besoek webblad
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Besoek die webwerf vir hierdie inhoud
|
||||
@@ -2048,6 +2111,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Skakel d
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Skakel deursigtigheid vir laai aanwysers. Ctrl+Kliek om te sluit
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Stel voorwerpe onsigbaar inplaas van deursigtig
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Dekking area verlig
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Af
|
||||
@@ -2322,6 +2389,10 @@ STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Vertoon
|
||||
STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Vertoon vrag voorsiening en aanvaar nywerhede
|
||||
STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Verbinding na kleinkaart
|
||||
STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Selekteer die vertoonde industrie ook op die kleinkaart
|
||||
STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Selekteer vrag
|
||||
STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Selekteer die vrag om te vertoon
|
||||
STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Kies die nywerheid
|
||||
STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Kies die nywerheid om te vertoon
|
||||
|
||||
# Land area window
|
||||
STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}Land gebied informasie
|
||||
@@ -2811,6 +2882,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Dienste
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} van {STRING} tot {STRING}{YELLOW} ({COMPANY}{YELLOW}, tot {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Kliek op aanbieding om skerm na nywerheid/dorp te skuif. Ctrl+Kliek maak 'n nuwe venster oop oor die nywerheid/dorp
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Stasie name - kliek op 'n naam om skerm na stasie te skuif. Ctrl+Kliek maak 'n nuwe venster oor die stastie oop
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Hou in Ctrl om meer as een item te selekteer
|
||||
@@ -3345,6 +3418,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Diens tu
|
||||
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Maak diens interval met 10 dae meer. Ctrl+Kliek om interval met 5 dae meer te maak
|
||||
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Maak diens interval met 10 dae minder. Ctrl+Kliek om interval met 5 dae minder te maak
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Verander instandhoudings-interval tipe
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Verstek
|
||||
STR_VEHICLE_DETAILS_DAYS :Dae
|
||||
STR_VEHICLE_DETAILS_PERCENT :Persentasie
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Benoem trein
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Benoem pad voertuig
|
||||
@@ -3757,6 +3834,8 @@ STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Om die
|
||||
STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Kon slegs 'n nood klank stel op spoor. Gaan na 'Aanlyn Inhoud' om klank stelle af te laai
|
||||
|
||||
# Screenshot related messages
|
||||
STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Groot skermskoot
|
||||
STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Die skermskoot sal 'n resolusie van {COMMA} x {COMMA} pixels beslaan. Hierdie skermskoot mag 'n tydjie neem. Wil u aangaan??
|
||||
|
||||
STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Skermkiekie suksesvol gestoor as '{STRING}'
|
||||
STR_ERROR_SCREENSHOT_FAILED :{WHITE}Skermskoot het misluk!
|
||||
@@ -4091,7 +4170,7 @@ STR_ERROR_CAN_T_ADD_ORDER_SHARED :{WHITE}... 'n v
|
||||
STR_ERROR_CAN_T_SHARE_ORDER_LIST :{WHITE}Kan nie opdraglys deel nie...
|
||||
STR_ERROR_CAN_T_STOP_SHARING_ORDER_LIST :{WHITE}Kan nie opdraglys ophou deel nie......
|
||||
STR_ERROR_CAN_T_COPY_ORDER_LIST :{WHITE}Kan nie opdrag lys kopie nie...
|
||||
STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... te ver van vorige destinasie
|
||||
STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... te ver van vorige bestemming
|
||||
STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... vliegtuig kan nie so ver vlieg nie
|
||||
|
||||
# Timetable related errors
|
||||
@@ -4108,6 +4187,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Kan nie
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :'n Simulasie speletjie wat gebaseer is op Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe DOS uitgawe grafieke.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe DOS (German) uitgawe grafieke.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe Windows uitgawe grafieke.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe DOS uitgawe klanke.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe Windows uitgawe klanke.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :'n Klank stel sonder enige klanke.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe Windows uitgawe musiek.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :'n Musiek stel sonder enige musiek.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Hoog kantoor blok
|
||||
|
@@ -370,15 +370,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :خروج
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :خريطة العالم
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :شاشة عرض اضافية
|
||||
STR_MAP_MENU_SIGN_LIST :قائمة العلامات
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :دليل المدن
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :جد المدينة
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :العروض
|
||||
@@ -646,7 +646,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :عمدة الت
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :وزير التجارة و النقل
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :ملك التجارة و النقل
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :امبراطور القرن
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}. {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}. {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}حققت شركة {COMPANY} بجدارة'{STRING}'
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}حقق {PRESIDENT_NAME}مدير شركة {COMPANY} '{STRING}' بجدارة
|
||||
@@ -1883,6 +1883,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK} غير
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}غير الشفافية لنسبة التحميل. مفتاح كنترول للاغلاق.
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}اخفاء الاجرام تماما بدلا من الشفافية
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}وضح منطقة التغطية
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}غلق
|
||||
@@ -2612,6 +2616,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}العر
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} من {STRING} الى {STRING}{YELLOW} - {COMPANY}{YELLOW}, حتى {DATE_SHORT}-
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}اضغط على الخدمة لتوسيط الخريطة على المصنع/المدينة. اضغط + كنترول لفتح شاشة عرض جديدة للمدينة.
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}اسم المحطة - اضغط على اسم المحطة لتوسيطها في الشاشة. اضغط + كنترول لفتح شاشة عرض جديدة بمنطقة المحطة.
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}اضغط بشكل متواصل على مفتاح كنترول لاختيار اكثر من وحدة
|
||||
@@ -3848,6 +3854,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}لا ي
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :نسخة مستنسخة من ترانسبورت تايكون ديلوكس
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :النسخة الاصلية من ترانسبورت تايكون ديلوكس الرسومية نسخة الدوس
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :النسخة الاصلية من ترانسبورت تايكون ديلوكس الالمانية نسخة الدوس
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :النسخة الاصلية من ترانسبورت تايكون ديلوكس الرسومية نسخة وندوز
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :النسخة الاصلية من ترانسبورت تايكون ديلوكس الصوتية نسخة الدوس
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :النسخة الاصلية من ترانسبورت تايكون ديلوكس الصوتية نسخة وندوز
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :مجموعة صوت بدوت اصوات مضافة
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :النسخة الاصلية من ترانسبورت تايكون ديلوكس الموسيقية نسخة وندوز
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :مجموعة موسيقى بدون موسيقى
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :مبنى مكاتب عالي
|
||||
|
@@ -371,15 +371,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Irten
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Munduko mapa
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :lehio extra
|
||||
STR_MAP_MENU_SIGN_LIST :Seinale zerrenda
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Herri direktorioa
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Herria eraiki
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subsidioak
|
||||
@@ -650,7 +650,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalista
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnatea
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Handikia
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Mendeko Tycoona
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} lorpenak '{STRING}' estatusa!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} {COMPANY} lorpenak '{STRING}' estatusa!
|
||||
@@ -1082,7 +1082,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Eskuina
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Gehienezko mailegua joko hasieran: {STRING}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Konpainiek eskatu dezaketen gehienezko mailegua(inflazioa kontua hartu gabe)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Interes tasa: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Maileguen interes tasa; inflazioa ere kontrolatuko du (Gaitua badago)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Maileguen interes tasa; inflazioa ere kontrolatuko du, gaitzen bada
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Mantenimendu kostea: {STRING}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Ibilgailu eta azpigiturak mantentzea kostatuko duena ezarri
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Eraikitzeko abiadura: {STRING}
|
||||
@@ -1094,7 +1094,7 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Subsidio garrai
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Eraikuntza kosteak: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Erosketa eta eraikuntza kostuak ezarri
|
||||
STR_CONFIG_SETTING_RECESSIONS :Atzerapen ekonomikoak: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Gaitua dagoenean, atzeratze ekonomikoa urte gutxika gertatuko da. Atzeratze ekonomikoan, fabriken ekoizpena dexente gutxituko da (Aurreko balioetara bueltatuko da atzerapena amaitzerakoan)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Gaitua dagoenean, atzeratze ekonomikoa urte gutxika gertatuko da. Atzeratze ekonomikoan, ekoizpen orokorra dexente gutxituko da (Aurreko balioetara bueltatuko da atzerapena amaitzerakoan)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Trenak geltokietan buelta eman ahal izatea: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Gaitua dagoenean, trenak ezingo dute geltokietan (trebidea bertan bukatzen ez denean) buelta eman, nahiz eta biderik motzena izan helmugara iristeko
|
||||
STR_CONFIG_SETTING_DISASTERS :Hondamendiak: {STRING}
|
||||
@@ -2040,6 +2040,7 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Bertsio
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Haukeratu dituzun edukiak berrituko dituzten edukiak deskargatuak izateko
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Guztia desmarkatu
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Dekargatuak izango ez diren eduki guztiak markatu
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}OpenTTD uzten zaude!
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Etiketa/izen iragazkia:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Webgunera joan
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Eduki honen webgunera joan
|
||||
@@ -2062,7 +2063,7 @@ STR_CONTENT_DETAIL_FILESIZE :{SILVER}Deskarg
|
||||
STR_CONTENT_DETAIL_SELECTED_BECAUSE_OF :{SILVER}Honengatik aurkeratua: {WHITE}{STRING}
|
||||
STR_CONTENT_DETAIL_DEPENDENCIES :{SILVER}Menpekotasunak: {WHITE}{STRING}
|
||||
STR_CONTENT_DETAIL_TAGS :{SILVER}Etiketak: {WHITE}{STRING}
|
||||
STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD "zlib" euskarria gabe eraikia izan da...
|
||||
STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD "zlib" euskarria gabe eraikita dago...
|
||||
STR_CONTENT_NO_ZLIB_SUB :{WHITE}... ezin da edukia deskargatu!
|
||||
|
||||
# Order of these is important!
|
||||
@@ -2109,6 +2110,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}katenari
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Zama adierazleen gardentasuna aldatu. Ktrl+Klik blokeatzeko
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Objektuak ikusezinak egin, gardenak izan ordez
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Geltoki irismena erakutsi
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Itzali
|
||||
@@ -2176,14 +2181,14 @@ STR_STATION_CLASS_WAYP :Bidepuntuak
|
||||
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_EXIT_TOOLTIP :{BLACK}Irteera seinalea (mekanikoa){} Blokeo seinalea bezala funtzionatzen du, baina beharrezko da sarrera seinaleak eta konbo aurre-seinaleak kolore egokia izateko
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Konbo seinalea (mekanikoa){}Sarrera seinale eta irteera seinale bezala funtzionatzen du. Honek ahalbidetzen du aurre-seinale zuhaitz haundiak eraikitzea
|
||||
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
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Norabide bakarreko bide seinalea (mekanikoa){}Norabide bakarreko bide seinalea bloke berdinean tren bat baino gehiago egotea ahalbidetzen du, trenak gelditzeko tokia aurkitu badezake. Ezin dira atzekaldetik pasa
|
||||
STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Blokeo seinalea (elektrikoa){}Oinarrizkoena den seinale mota, bloke berdinean tren bakarra egotea ahalbidetzen duena
|
||||
STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Sarrera seinalea (elektrikoa){}Berde egongo da hurrengo sekzioan irteera seinale bat edo bat baino gehiago berde badago. Bestela gorria egongo da
|
||||
STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Irteera seinalea (elektrikoa){} Blokeo seinalea bezala funtzionatzen du, baina beharrezko da sarrera seinaleak eta konbo aurre-seinaleak kolore egokia izateko
|
||||
STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Konbo seinalea (elektrikoa){}Sarrera seinale eta irteera seinale bezala funtzionatzen du. Honek ahalbidetzen du aurre-seinale zuhaitz haundiak eraikitzea
|
||||
STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Sarrera seinalea (elektrikoa){}Berde egongo da hurrengo sekzioan irteera seinale bat edo bat baino gehiago berde badago. Bestela gorri egongo da
|
||||
STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Irteera seinalea (elektrikoa){} Blokeo seinalea bezala funtzionatzen du, baina beharrezkoa da sarrera seinaleak eta konbo aurre-seinaleen kolorea egokia izatea
|
||||
STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Konbo seinalea (elektrikoa){}Sarrera seinale eta irteera seinale bezala funtzionatzen du. Honek aurre-seinale "zuhaitz" haundiak eraikitzea ahalbidetzen du
|
||||
STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Bide seinalea (elektrikoa){}Bide seinalea bloke batean tren bat baino gehiago egotea ahalbidetzen du, trenak gelditzeko bide egokia erreserbatu badezake. Oinarrizko bide seinaleak atzekaldetik pasa daitezke
|
||||
STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Norabide bakarreko bide seinalea (elektrikoa){}Norabide bakarreko bide seinalea bloke berdinean tren bat baino gehiago egotea ahalbidetzen du, trenak gelditzeko tokia aurkitu badezake. Ezin dira atzekaldetik pasa
|
||||
STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Seinaleak aldatu{}Aukeratua dagoenean, aukeratutako seinalea aldatuko da hautatutako seinale motagatik. Krtl+Klik mota aldatuko du, Shift+Klik gutxi gora beherako kostea erakutsiko du
|
||||
@@ -2628,7 +2633,7 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Gora mug
|
||||
STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Aukeratutako NewGRFa gora mugitu
|
||||
STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Behera mugitu
|
||||
STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Mugitu aukeratutako NewGRFa zerrendan behera
|
||||
STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Instalatutako NewGRFen zerrenda
|
||||
STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Instalatutako NewGRF fitxategien zerrenda
|
||||
|
||||
STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Parametroak ezarri
|
||||
STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Erakutsi parametroak
|
||||
@@ -2874,6 +2879,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Subentzi
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} {STRING}tik {STRING}{YELLOW}ra ({COMPANY}{YELLOW}, {DATE_SHORT} arte)
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klikatu garraio zerbitzuan ikuspegi nagusia industria/herrian zentratzeko. Ktrl+Klik ikuspegi lehio berria irekiko du indutri/herriaren kokapenean
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Geltokien izenak - Klikatu geltokiaren izenean ikuspegi nagusia geltokian zentratzeko. Ktrl+Klik Ikuspegi lehio berria irekiko du geltokiaren kokapenean
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Mantendu Ktrl geltoki bat baino gehiago aukeratzeko
|
||||
@@ -4173,6 +4180,8 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Ezin da
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Transport Tycoon Deluxe-ren simulazio bat
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Ofizina eraikin handia
|
||||
|
@@ -684,15 +684,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Выхад
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Мапа сусьвету
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Дадатковае вакно прагляду
|
||||
STR_MAP_MENU_SIGN_LIST :Сьпіс таблічак
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Сьпіс гарадоў
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Заснаваць горад
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Субсыдыі
|
||||
@@ -963,7 +963,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Капітал
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Маґнат
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Транспартны кароль
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Аліґарх стагоддзя
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}«{STRING}» ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}Дырэктара кампаніі «{COMPANY}» называюць {STRING.abl}!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME}, прэзідэнт кампаніі «{COMPANY}», заслужыў тытул «{STRING}»!
|
||||
@@ -1416,7 +1416,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Усталюй
|
||||
STR_CONFIG_SETTING_RECESSIONS :Спады: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Калі ўключана, спад можа наставаць раз у некалькі гадоў. Падчас спаду ўвесь аб'ём вытворчасьці значна ніжэй (ён вяртаецца да ранейшага ўзроўня, калі спад сканчаецца)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Забараніць разварот цягнікоў на станцыях: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Калі ўключана, цягнікі ня будуць заварочвацца на прахадных станцыях, калі ёсць карацейшы шлях да наступнага пункта прызначэньня, што не патрабуе развароту
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Калі ўключана, цягнікі ня будуць разварочвацца на прахадных станцыях, нават калі гэта дазволіць скараціць шлях да наступнага пункта прызначэньня
|
||||
STR_CONFIG_SETTING_DISASTERS :Бедствы: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Пераключыце бедствы, якія могуць час ад часу блякаваць ці зьнішчаць транспартныя сродкі ды інфраструктуру
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :Стаўленьне гарадзкой рады да рэструктурызацыі навакольляў: {STRING}
|
||||
@@ -1915,6 +1915,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... фа
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... набор ґрафікі "{STRING}" ня знойдзены
|
||||
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}
|
||||
@@ -2393,6 +2395,10 @@ 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}Наведаць вэб-старонку для гэтага кантэнту
|
||||
@@ -2478,6 +2484,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Пера
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Пераключыць празрыстасьць для індыкатараў загрузкі. Ctrl+клік — заблякаваць.
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Зрабіць аб'екты не празрыстымі, а цалкам нябачнымі
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Падсьветка зоны пакрыцьця
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Выкл.
|
||||
@@ -3250,6 +3260,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Марш
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} па маршруце з {STRING} у {STRING}{YELLOW} ({COMPANY}{YELLOW}, да {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Націсьніце на маршрут для адлюстраваньня прадпрыемства/горада. Ctrl+пстрычка паказвае ў дадатковым вакне.
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Сьпіс станцыяў: пстрычка па назьве паказвае станцыю ў асноўным вакне. Ctrl+клiк паказвае ў дадатковым вакне.
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Націсьніце й ўтрымлівайце Ctrl для выбару больш за адзін варыянт
|
||||
@@ -3804,6 +3816,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Агля
|
||||
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Павялiчыць інтэрвал абслугоўваньня на 10. Ctrl+клік — павялічыць інтэрвал абслугоўваньня на 5.
|
||||
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Зьменшыць інтэрвал абслугоўваньня на 10. Ctrl+клік — паменшыць інтэрвал абслугоўваньня на 5.
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Зьмяніць прынцып разьліку інтэрвалу абслугоўваньня
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Па змоўчаньні
|
||||
STR_VEHICLE_DETAILS_DAYS :У днях
|
||||
STR_VEHICLE_DETAILS_PERCENT :У адсотках
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Назва цягнiка
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Назва аўтамабiля
|
||||
@@ -3907,7 +3923,7 @@ STR_ORDER_SERVICE_TOOLTIP :{BLACK}Прап
|
||||
STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Парамэтр транспарту для параўнаньня
|
||||
|
||||
# Conditional order variables, must follow order of OrderConditionVariable enum
|
||||
STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :Працэнт пагрузкі
|
||||
STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :Адсотак пагрузкі
|
||||
STR_ORDER_CONDITIONAL_RELIABILITY :Надзейнасьць
|
||||
STR_ORDER_CONDITIONAL_MAX_SPEED :Макс. хуткасьць
|
||||
STR_ORDER_CONDITIONAL_AGE :Узрост (гадоў)
|
||||
@@ -4569,6 +4585,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Не а
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Эканамічны сімулятар на аснове «Transport Tycoon Deluxe»
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Арыгінальная графіка з Transport Tycoon Deluxe для DOS.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Арыгінальная графіка з нямецкай версіі Transport Tycoon Deluxe для DOS.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Арыгінальная графіка з Transport Tycoon Deluxe для Windows.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Арыгінальны набор гукавога афармленьня з гульні Transport Tycoon Deluxe для DOS.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Арыгінальны набор гукавога афармленьня з гульні Transport Tycoon Deluxe для Windows.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :"Пусты" набор гукавога афармленьня, не змяшчаючы ніякіх гукаў.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Арыгінальны набор музычнага афармленьня з гульні Transport Tycoon Deluxe для Windows.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :"Пусты" набор музычнага афармлення, не змяшчаючы ніякай музыкі.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Вышынны офісны будынак
|
||||
|
@@ -372,15 +372,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Sair
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Mapa do mundo
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Janela extra
|
||||
STR_MAP_MENU_SIGN_LIST :Lista de sinais
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Lista de cidades
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Fundar cidade
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subsídios
|
||||
@@ -651,7 +651,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Capitalista
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnata
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mandachuva
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Magnata do Século
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} alcança o status de '{STRING}'!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} alcança o status de '{STRING}'!
|
||||
@@ -1090,7 +1090,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Direita
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Empréstimo Inicial Máximo: {STRING}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Quantia máxima a ser emprestada para uma companhia (sem levar em conta a inflação)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Taxa de Juros: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Juros de empréstimo; também controla inflação se ativado
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Juros de empréstimo; também controla inflação, se ativado
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Custos de Operação: {STRING}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Define o nível e custos de manutenção de veículos e infraestrutura
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocidade de construção: {STRING}
|
||||
@@ -1102,9 +1102,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Define quando
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Custos de construção: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Define o nível de construção e custos de compra
|
||||
STR_CONFIG_SETTING_RECESSIONS :Recessões: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Se ativado, recessões podem ocorrer a alguns anos. Durante as recessões, toda produção é significativamente menor (retorna ao nível normal após a recessão)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Se ativado, recessões podem ocorrer a alguns anos. Durante recessões, toda produção é significativamente menor (retorna ao nível normal após a recessão)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Desabilitar reversão de trens nas estações: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Se ativado, trens não irão mudar de direção em estações não terminais, se houver um caminho mais curto ao próximo destino ao trocar de direção
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Se ativado, trens não irão mudar de direção em estações não terminais, mesmo se houver um caminho mais curto ao próximo destino ao trocar de direção
|
||||
STR_CONFIG_SETTING_DISASTERS :Desastres: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Alterna desastres que podem ocasionalmente bloquear ou destruir veículos ou infraestrutura
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :Atitude da prefeitura em relação à restruturação de área: {STRING}
|
||||
@@ -1372,7 +1372,7 @@ STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Toca efeitos so
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE :Veículos: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Toca efeitos sonoros dos veículos
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT :Ambiente: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Toca sons de ambiente, sons de indústrias e cidades
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Tocar som ambiente para paisagismo, indústrias e cidades
|
||||
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Desativar construção de infraestrutura quando nenhum veículo adequado estiver disponível: {STRING}
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Quando ativado, a infraestrutura só é disponível se há veículos disponíveis para usá-la, prevenindo gasto de tempo e dinheiro com infraestrutura inútil.
|
||||
@@ -1429,7 +1429,7 @@ STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Exibe um jornal
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Chegada do primeiro veículo na estação concorrente: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Exibe um jornal quando o primeiro veículo chega numa estação de um competidor
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Acidentes / desastres: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Exibe um jornal quando acidentes ou desastres acontecem
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Exibir jornal quando acidentes ou desastres acontecem
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Informações da empresa: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Exibe um jornal quando uma companhia é aberta, ou quando estão próximas da bancarrota
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Abertura de indústrias: {STRING}
|
||||
@@ -1449,7 +1449,7 @@ STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Exibe mensagens
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Novos veículos: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Exibe um jornal quando um novo tipo de veículo se torna disponível
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Mudanças à aceitação de carga: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Exibe mensagens sobre estações alterando aceitação de cargas
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Exibe mensagens sobre estações alterando aceitação de algumas cargas
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES :Subsídios: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Exibe um jornal sobre eventos relacionados a subsídios
|
||||
STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Informações gerais: {STRING}
|
||||
@@ -1472,7 +1472,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Ao arrastar, co
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Define a distância a cada qual sinais serão construídos até o próximo obstáculo (sinal, intersecção), ao clicar e arrastar sinais
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} quadrado{P "" s}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Ao arrastar, manter distância fixa entre os sinais: {STRING}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Selecione o comportamento da construção de sinais ao Ctrl+Clicar. Se desativado, sinais são colocados ao redor de túneis ou pontes para evitar trechos compridos sem sinalização. Se ativado, sinais são colocados a cada N quadrados, tornando o alinhamento de sinais em trilhos paralelos mais fácil
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Selecione o comportamento da construção de sinais ao Ctrl+Arrastar. Se desativado, sinais são colocados ao redor de túneis ou pontes para evitar trechos compridos sem sinalização. Se ativado, sinais são colocados a cada N quadrados, tornando o alinhamento de sinais em trilhos paralelos mais fácil
|
||||
STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Construir sinaleiros até: {STRING}
|
||||
STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Seleciona o ano a partir do qual semáforos substituirão sinais. Antes desse ano, serão utilizados sinais de placa (diferença puramente estética)
|
||||
STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Ativar interface de sinais: {STRING}
|
||||
@@ -1603,6 +1603,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... form
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignorando conj. de Gráficos Base '{STRING}': não encontrado
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignorando conj. de Sons Base '{STRING}': não encontrado
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignorando conj. de Músicas Base '{STRING}': não encontrado
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Sem memória
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}A alocação {BYTES} de spritecache falhou. O spritecache foi reduzido a {BYTES}. A performance do jogo será reduzida. Para reduzir a necessidade de memória tente disabilitar 32bpp gráficos e/ou reduzir o zoom.
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2081,6 +2083,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Selecion
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Seleciona tudo que consistir em upgrades para conteúdo existente para ser baixado
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Desmarcar tudo
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Desceleciona todos
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Procurar em sites externos
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Conteúdo procurado não está disponível no servidor de conteúdo do OpenTTD se hospedado em websites não relacionados ao OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Você está saindo do OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Os termos e condições ao baixar conteúdo de fontes externas pode varias.{}Você deverá consultar as fontes para obter instruções de como instalar o conteúdo no OpenTTD.{} Deseja continuar?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Tag/nome do filtro:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Visitar website
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visitar o site desse conteúdo
|
||||
@@ -2150,6 +2156,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Alternar
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Altera transparência para os indicadores de carga. Ctrl+Clique para travar
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Definir objetivos como invisíveis ao invés de transparentes.
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Destacar cobertura
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Desativar
|
||||
@@ -2764,6 +2774,7 @@ STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Você e
|
||||
|
||||
STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Impossível adicionar: registro de GRF já existe
|
||||
STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Arquivo procurado não encontrado (carregado compatível com GRF)
|
||||
STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Impossível adicionar arquivo: Limite de NewGRF's atingido
|
||||
|
||||
STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}GRG(s) compatível(eis) carregados para os arquivos que faltam
|
||||
STR_NEWGRF_DISABLED_WARNING :{WHITE}arquivo(s) GRF em falta foram desativados
|
||||
@@ -2917,6 +2928,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Transpor
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} de {STRING} para {STRING}{YELLOW} ({COMPANY}{YELLOW}, até {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique num serviço para centralizar a visualização principal numa indústria/cidade.Ctrl+Clique abre uma nova janela na localização da indústria/cidade
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Nomes da estação - clique no nome para centralizar a visualização principal na estação. Ctrl+Clique abre uma nova janela na localização da estação
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Segure Ctrl para selecionar mais de um item
|
||||
@@ -3451,6 +3464,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Interval
|
||||
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
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Alterar o tipo de intervalo entre manutenções
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Padrão
|
||||
STR_VEHICLE_DETAILS_DAYS :Dias
|
||||
STR_VEHICLE_DETAILS_PERCENT :Porcentagem
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Renomear trem
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Renomear automóvel
|
||||
@@ -3709,7 +3726,7 @@ STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Preenche
|
||||
|
||||
STR_TIMETABLE_EXPECTED :{BLACK}Esperado
|
||||
STR_TIMETABLE_SCHEDULED :{BLACK}Agendado
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Mudar entre esperado e agendado
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Trocar entre esperado e agendado
|
||||
|
||||
STR_TIMETABLE_ARRIVAL_ABBREVIATION :C:
|
||||
STR_TIMETABLE_DEPARTURE_ABBREVIATION :P:
|
||||
@@ -4174,6 +4191,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Impossí
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... veículo está destruído
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}Não há veículos disponíveis ainda
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :[WHITE]Inicie um jogo após {DATE_SHORT} ou use um NewGRF que tenha veículos anteriores
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Impossível fazer o trem passar o sinal de perigo...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Impossível inverter a direção do trem...
|
||||
@@ -4216,6 +4236,8 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Impossí
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Um jogo de simulação baseado no Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Edifício alto de escritórios
|
||||
@@ -4664,6 +4686,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}
|
||||
|
@@ -373,15 +373,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Изход
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Карта на света
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Допълнителна камера
|
||||
STR_MAP_MENU_SIGN_LIST :Списък с табели
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Списък с градовете
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Основи град
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Субсидии
|
||||
@@ -652,7 +652,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Капитал
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Магнат
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Завоевател
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Акула на века
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} достигна статус '{STRING}'!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} от {COMPANY} достигна статус '{STRING}'!
|
||||
@@ -2090,6 +2090,9 @@ 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_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}Посети уебсайта за това съдържание
|
||||
@@ -2159,6 +2162,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Акти
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Вклучи прозрачност за товарещи указатели. Ctrl+Click за заключване
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Направи обектите невидими вместо прозрачни
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Маркиране на Отбелязаната зона
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Изключен
|
||||
@@ -2927,6 +2934,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Субс
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} от {STRING} до {STRING}{YELLOW} ({COMPANY}{YELLOW}, до {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Натисни върху услугата за да се фокусира върху индустрията/града. Ctrl отваря нов изглед към индустрията/града
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Имена на станции - натиснете върху името, за да фиксирате главния прозорец върху станцията
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Задържете CTRL, за да изберете повече от един обект
|
||||
@@ -3461,6 +3470,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Инте
|
||||
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Удължава периода за сервиз с 10. Ctrl-click удължава периода за сервиз с 5
|
||||
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Намалява периода за сервиз с 10. Ctrl-click намалява периода за сервиз с 5
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Промяна на сервизният интервал
|
||||
STR_VEHICLE_DETAILS_DEFAULT :По подразбиране
|
||||
STR_VEHICLE_DETAILS_DAYS :Дни
|
||||
STR_VEHICLE_DETAILS_PERCENT :Процент
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Име на влак
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Преименувай МПС-то
|
||||
@@ -3535,9 +3548,9 @@ STR_ORDER_GO_NON_STOP_VIA :Отиди бе
|
||||
STR_ORDER_TOOLTIP_NON_STOP :{BLACK}Промени начинат на спиране на осветената заповед
|
||||
|
||||
STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}До пълно товарене на стоката
|
||||
STR_ORDER_DROP_LOAD_IF_POSSIBLE :Натовари ако е вазможно
|
||||
STR_ORDER_DROP_FULL_LOAD_ALL :Напълно нотовари всичкиат товар
|
||||
STR_ORDER_DROP_FULL_LOAD_ANY :Напълно нотовари какъвто и да е товар
|
||||
STR_ORDER_DROP_LOAD_IF_POSSIBLE :Натовари ако е възможно
|
||||
STR_ORDER_DROP_FULL_LOAD_ALL :Натовари догоре целият товар
|
||||
STR_ORDER_DROP_FULL_LOAD_ANY :Пълно товарене на какъвто и да е товар
|
||||
STR_ORDER_DROP_NO_LOADING :Ненатаваряй
|
||||
STR_ORDER_TOOLTIP_FULL_LOAD :{BLACK}Промени начинат на натоваряне на осветената заповед
|
||||
|
||||
@@ -3564,7 +3577,7 @@ STR_ORDER_SERVICE_TOOLTIP :{BLACK}Проп
|
||||
STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Данни за превозното средство, на които се базира
|
||||
|
||||
# Conditional order variables, must follow order of OrderConditionVariable enum
|
||||
STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :Процент товарене
|
||||
STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :Процент натовареност
|
||||
STR_ORDER_CONDITIONAL_RELIABILITY :Надеждност
|
||||
STR_ORDER_CONDITIONAL_MAX_SPEED :Максимална скорост
|
||||
STR_ORDER_CONDITIONAL_AGE :Възраст (години)
|
||||
@@ -3627,19 +3640,19 @@ STR_ORDER_GO_TO_STATION :{STRING} {STATI
|
||||
STR_ORDER_IMPLICIT :{G=n}(Автоматично)
|
||||
|
||||
STR_ORDER_FULL_LOAD :(Напълно натовари)
|
||||
STR_ORDER_FULL_LOAD_ANY :(Напълно натовари какъвто и да е товар)
|
||||
STR_ORDER_FULL_LOAD_ANY :(Натовари догоре какъвто и да е товар)
|
||||
STR_ORDER_NO_LOAD :(Ненатоваряй)
|
||||
STR_ORDER_UNLOAD :(Ненатоваряй и вземи товар)
|
||||
STR_ORDER_UNLOAD :(Разтовари и вземи товар)
|
||||
STR_ORDER_UNLOAD_FULL_LOAD :(Разтовари и чакай за пълен товар)
|
||||
STR_ORDER_UNLOAD_FULL_LOAD_ANY :(Разтовари и чакай за какъвто и да е пълен товар)
|
||||
STR_ORDER_UNLOAD_NO_LOAD :(Разтовари и потегли празен)
|
||||
STR_ORDER_TRANSFER :(Смени и вземи товар)
|
||||
STR_ORDER_TRANSFER_FULL_LOAD :(Смени и чакай за пълен товар)
|
||||
STR_ORDER_TRANSFER_FULL_LOAD_ANY :(Смени и чакай за какъвто и да е пълен товар)
|
||||
STR_ORDER_TRANSFER :(Прехвърли и вземи товар)
|
||||
STR_ORDER_TRANSFER_FULL_LOAD :(Прехвърли и чакай за пълен товар)
|
||||
STR_ORDER_TRANSFER_FULL_LOAD_ANY :(Прехвърли и чакай за какъвто и да е пълен товар)
|
||||
STR_ORDER_TRANSFER_NO_LOAD :(Смени и потегли празен)
|
||||
STR_ORDER_NO_UNLOAD :(Не разтоваряй и вземи товар)
|
||||
STR_ORDER_NO_UNLOAD_FULL_LOAD :(Неразтоварвай и изчакай за пълен товар)
|
||||
STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Не разтоваряй и чакай за какъвто и да е пълен товар)
|
||||
STR_ORDER_NO_UNLOAD_FULL_LOAD :(Не разтоварвай и изчакай за пълен товар)
|
||||
STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Не разтоварвай и чакай за какъвто и да е пълен товар)
|
||||
STR_ORDER_NO_UNLOAD_NO_LOAD :(Без разтоварване и без натоварване)
|
||||
|
||||
STR_ORDER_AUTO_REFIT :(Автоматично сменяне на товар с {STRING})
|
||||
@@ -4226,6 +4239,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Не м
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Симулативна игра, базирана на Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Оригинални графики на Transport Tycoon Deluxe за DOS.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Оригинални графики на Transport Tycoon Deluxe за DOS (немски) .
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Оригинални графики на Transport Tycoon Deluxe за Windows.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Оригинални звуци на Transport Tycoon Deluxe за DOS.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Оригинални звуци на Transport Tycoon Deluxe за Windows.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Празен звуков пакет.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Оригинална музика на Transport Tycoon Deluxe за Windows.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Празен музикален пакет.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Висока офис сграда
|
||||
|
@@ -372,15 +372,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Surt
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Mapa del món
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Vista extra
|
||||
STR_MAP_MENU_SIGN_LIST :Llista de senyals
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Directori de Poblacions
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Funda un poble
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subvencions
|
||||
@@ -651,7 +651,7 @@ 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_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
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}' !
|
||||
@@ -1090,7 +1090,7 @@ 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_INTEREST_RATE :Taxa d'interès: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Taxa d'interès dels préstecs; també controla la inflació si està activada
|
||||
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}
|
||||
@@ -1104,7 +1104,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Fixa el nivell
|
||||
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, si hi ha un camí més curt al seu proper destí en cas de canviar de sentit
|
||||
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_CITY_APPROVAL :Actitud de l'alcaldia de la ciutat davant de reestructuracions a la zona: {STRING}
|
||||
@@ -1219,7 +1219,7 @@ STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Alerta amb miss
|
||||
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_OFF :No
|
||||
STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Si, excepte vehicles parats
|
||||
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
|
||||
@@ -1362,7 +1362,7 @@ STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Reprodueix un s
|
||||
STR_CONFIG_SETTING_SOUND_NEWS :Notícies: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Reprodueix un so quan apareix una notícia
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR :Cap d'any: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Reprodueix un efecte de so al final de l'any quan apareix el resum financer de l'empresa
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Reprodueix un efecte de so al final de l'any quan apareix el resum financer de l'any de l'empresa en comparació amb l'anterior
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM :Construcció: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Reprodueix un efecte de so quan es realitzin amb èxit construccions o altres accions
|
||||
STR_CONFIG_SETTING_SOUND_CLICK :Botons: {STRING}
|
||||
@@ -1429,7 +1429,7 @@ STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Mostra les not
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Arribada del primer vehicle a una estació competidora: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Mostra les notícies quan arribi el primer vehicle a una estació d'un competidor
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Accidents / desastres: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Mostra les notícies d'accidents i desastres
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Mostra un diari quan passin accidents i desastres
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Informació de l'Empresa: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Mostra les notícies de companyies noves que es creen i de companyies en risc de fer fallida
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Obertura d'indústries: {STRING}
|
||||
@@ -1449,7 +1449,7 @@ STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Mostra missatge
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Nous vehicles: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Mostra les notícies d'aparicions de nous tipus de vehicles
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Canvis en l'admissió de càrrega: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Mostra missatges quan les estacions canviïn l'acceptació d'alguna càrrega
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Mostra missatges sobre les estacions que canviïn l'acceptació d'alguna càrrega
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES :Subvencions: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Mostra les notícies d'esdeveniments relacionats amb subsidis
|
||||
STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Informació General: {STRING}
|
||||
@@ -1472,7 +1472,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :En arrossegar,
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Estableix la distància en les quals els senyals seran construïts a la via fins al següent obstacle (senyal, desviament), si els senyals són arrossegats
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} cel·la{P 0 "" s}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Quan arrosseguis, mantingues fixada la distància entre senyals: {STRING}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Selecciona el comportament de la situació de senyals quan Ctrl+arrossega senyals. Si es desactiva els senyals són situats al voltant dels túnels o ponts per evitar grans troços sense senyals. Si s'activa, els senyals són situats cada N cel·les, fent l'alineament de senyals en vies paral·leles més fàcil
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Selecciona el comportament de la situació de senyals quan Ctrl+arrossega senyals. Si es desactiva els senyals són situats al voltant dels túnels o ponts per evitar grans troços sense senyals. Si s'activa, els senyals són situats cada n cel·les, fent l'aliniament de senyals en vies paral·leles més fàcil
|
||||
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}
|
||||
@@ -1603,6 +1603,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... el f
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignorant el conjunt de gràfics base '{STRING}': no trobats
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignorant el conjunt de sons base '{STRING}': no trobats
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignorant el conjunt de músiques base '{STRING}': no trobats
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Memòria exhaurida
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}L'assignació de {BYTES} de la memòria cau d'sprites ha fallat. La memòria cau d'sprites s'ha reduït a {BYTES}. Això reduirà el rendiment d'OpenTTD. Per reduir els requeriments de memòia pots probar a desactivar els gràfics de 32bpp i/o els nivells amb zoom
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -1647,7 +1649,7 @@ STR_INTRO_TRANSLATION :{BLACK}A aquest
|
||||
# Quit window
|
||||
STR_QUIT_CAPTION :{WHITE}Surt
|
||||
STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}Estàs segur que vols abandonar aquest joc i tornar a {STRING}?
|
||||
STR_QUIT_YES :{BLACK}Si
|
||||
STR_QUIT_YES :{BLACK}Sí
|
||||
STR_QUIT_NO :{BLACK}No
|
||||
|
||||
# Supported OSes
|
||||
@@ -1750,7 +1752,7 @@ STR_FACE_EUROPEAN :{BLACK}Europea
|
||||
STR_FACE_SELECT_EUROPEAN :{BLACK}Selecciona cares europees
|
||||
STR_FACE_AFRICAN :{BLACK}Africana
|
||||
STR_FACE_SELECT_AFRICAN :{BLACK}Selecciona cares africanes
|
||||
STR_FACE_YES :Si
|
||||
STR_FACE_YES :Sí
|
||||
STR_FACE_NO :No
|
||||
STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Activa el bigoti o les arracades
|
||||
STR_FACE_HAIR :Cabell:
|
||||
@@ -2081,6 +2083,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Sel. act
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Marca tots els continguts que siguin actualitzacions dels continguts a ser descarregats
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Deselecciona tot
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marca tots els continguts a no ser descarregats
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Cerca en webs externes
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Cerca contingut no disponible al servei de continguts d'OpenTTD en webs no associades amb OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Estàs sortint d'OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Els termes i condicions per descarregar contingut des de webs externes varia.{}Hauràs d'adreçar-te a les webs externes per trobar instruccions sobre com instal·lar contingut a OpenTTD.{}Vols continuar?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Marca/anomena filtre:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Visita la web
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visita la web per accedir a aquest contingut
|
||||
@@ -2134,7 +2140,7 @@ STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}No s'han
|
||||
|
||||
STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Gràfics que falten
|
||||
STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD necessita gràfics per funcionar però no se n'ha trobat cap. Vols permetre a OpenTTD descarregar i instal·lar aquests gràfics?
|
||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Si, descarregar els gràfics
|
||||
STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sí, descarregar els gràfics
|
||||
STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}No, surt d'OpenTTD
|
||||
|
||||
# Transparency settings window
|
||||
@@ -2150,6 +2156,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Commuta
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Commuta la transparència dels indicadors de càrrega. Ctrl+Clic per bloquejar
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Mostra els objectes invisibles enlloc de transparents
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Marca l'àrea de cobertura
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Inactiu
|
||||
@@ -2893,7 +2903,7 @@ STR_GOAL_QUESTION_CAPTION_ERROR :Error
|
||||
STR_GOAL_QUESTION_BUTTON_CANCEL :Cancel·la
|
||||
STR_GOAL_QUESTION_BUTTON_OK :OK
|
||||
STR_GOAL_QUESTION_BUTTON_NO :No
|
||||
STR_GOAL_QUESTION_BUTTON_YES :Si
|
||||
STR_GOAL_QUESTION_BUTTON_YES :Sí
|
||||
STR_GOAL_QUESTION_BUTTON_DECLINE :Declina
|
||||
STR_GOAL_QUESTION_BUTTON_ACCEPT :Accepta
|
||||
STR_GOAL_QUESTION_BUTTON_IGNORE :Ignora
|
||||
@@ -2918,6 +2928,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Serveis
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} des de {STRING} fins a {STRING}{YELLOW} ({COMPANY}{YELLOW}, fins a {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clica al servei per centrar la vista a la indústria/població. Ctrl+Clic obre una nova vista al lloc de la indústria/població
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Noms d'estació - clica sobre el nom per centrar la vista principal a l'estació. Ctrl+Clic obre una nova vista al lloc de l'estació
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Mantingues polsat CTRL per a seleccionar més d'un ítem
|
||||
@@ -2933,7 +2945,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}No hi ha
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Esperant: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} en ruta des de {STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} des de {STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Accepta
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Mostra la llista de càrregues admeses
|
||||
@@ -3452,6 +3464,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Interval
|
||||
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Augmenta l'interval de les revisions en 10. Ctrl+Clic augmenta l'interval de les revisions en 5
|
||||
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Disminueix l'interval de les revisions en 10. Ctrl+Clic disminueix l'interval de les revisions en 5
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Canvia el tipus d'interval de les revisions
|
||||
STR_VEHICLE_DETAILS_DEFAULT :{G=Masculin}Predeterminat
|
||||
STR_VEHICLE_DETAILS_DAYS :{G=Masculin}Dies
|
||||
STR_VEHICLE_DETAILS_PERCENT :Percentatge
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Anomena tren
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Anomena automòbil
|
||||
@@ -4175,6 +4191,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}No es po
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vehicle està destruït
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}Encara no hi ha vehicles disponibles
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Iniciar un nou joc desprès de {DATE_SHORT} o usar un NewGRF que proporciona vehicles primerencs
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}No pots fer que un tren passi d'una senyal amb perill...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}No es pot invertir la direcció del tren...
|
||||
@@ -4217,6 +4236,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}El senya
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Un joc de simulació basat en Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Gràfics originals de Transport Tycoon Deluxe per a DOS.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Gràfics originals de Transport Tycoon Deluxe per a DOS (Alemany).
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Gràfics originals de Transport Tycoon Deluxe per a Windows.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Sons originals de Transport Tycoon Deluxe per a DOS.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Sons originals de Transport Tycoon Deluxe per a Windows.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Un joc de sons sense cap so.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Música Original de Transport Tycoon Deluxe per a Windows.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Un joc de música sense cap música.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Bloc d'oficines alt
|
||||
@@ -4665,6 +4694,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}
|
||||
|
@@ -467,15 +467,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Izlaz
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Karta svijeta
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Dodatni pogled
|
||||
STR_MAP_MENU_SIGN_LIST :Popis znakova
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Popis gradova
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Osnuj grad
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subvencije
|
||||
@@ -746,7 +746,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalist
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Velikaš
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Bogataš
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Tajkun stoljeća
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}Tvrtka {COMPANY} postigla je status '{STRING}' !
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} iz tvrtke {COMPANY} postigao je status '{STRING}'!
|
||||
@@ -1197,9 +1197,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Postavi koliko
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Građevinski troškovi: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Postavi razinu građevinskih troškova i troškova kupnje
|
||||
STR_CONFIG_SETTING_RECESSIONS :Recesije: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Ukoliko je uključeno, recesija se može pojaviti svakih nekoliko godine. Tijekom recesije sva proizvodnja je značajno manja (vraća se na prethodnu razinu kada recesija završi)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Ukoliko je uključeno, recesija se može pojaviti svakih nekoliko godina. Tijekom recesije sva proizvodnja je značajno manja (vraća se na prethodnu razinu kada recesija završi)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Zabrani okretanje vlakova na stanicama: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Ukoliko je uključeno, vlakovi se neće okretati na stanicama koje nisu krajnje ukoliko postoji kraći put do njihovog sljedećeg odredišta prilikom okretanja
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Ukoliko je uključeno, vlakovi se neće okretati na stanicama koje nisu krajnje čak i ukoliko postoji kraći put do njihovog sljedećeg odredišta prilikom okretanja
|
||||
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}
|
||||
@@ -1698,6 +1698,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... form
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... zaobilazim Osnovni Grafički set '{STRING}': nije pronađen
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... zaobilazim Osnovni Zvukovni set '{STRING}': nije pronađen
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... zaobilazim Osnovni Muzički set '{STRING}': nije pronađen
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Nedostaje memorije
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Dodjeljivanje {BYTES} predmemorije spriteova nije uspjelo. Predmemorija spriteova je smanjena na {BYTES}. Ovo će smanjiti performanse OpenTTD-a. Za smanjivanje potreba memorije you možete pokušati isključiti 32bpp grafiku i/ili razine zumiranja.
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2176,6 +2178,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Izaberi
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Označi sav sadržaj koji je nadogradnja postojećem sadržaju kako bi ga preuzeo
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Odznači sve
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Označi sav sadržaj koji se ne preuzima
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Pretraži vanjske web stranice
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Traženje sadržaja nije dostupno u OpenTTD-ovom servisu za sadržaje za web stranice koje nisu pridružene OpenTTD-u
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Napuštate OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Pravila i uvjeti za preuzimanje sadržaja sa vanjskih web stranica variraju.{}Morate pogledati vanjske stranice za upute kako instalirati sadržaj u OpenTTD.{}Da li želite nastaviti?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Ime/Tag filter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Posjetite web-stranicu
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Posjetite web-stranicu za ovaj sadržaj
|
||||
@@ -2245,6 +2251,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Aktivira
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Namjesti prozirnost za indikatore učitavanja. Ctrl+klik za zaključavanje
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Učini objekte nevidljivima umjesto prozirnima
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Označavanje područja pokrivanja
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Isključeno
|
||||
@@ -3013,6 +3023,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Usluge k
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} iz {STRING} prema {STRING}{YELLOW} ({COMPANY}{YELLOW}, do {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klikni na uslugu za centriranje pogleda na industriju/grad. Ctrl+klik otvara novi prozor sa lokacijom industrije/grada
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Imena postaja - klikni na ime kako bi centrirao glavni pogled na postaju. Ctrl+klik otvara novi prozor sa lokacijom postaje
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Drži Ctrl kako bi odabrao više od jedne stavke
|
||||
@@ -3028,7 +3040,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Nijedna
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Čekanje: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT}dolazi iz {STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} iz {STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Prihvaća
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Pokaži popis tereta koji se prihvaća
|
||||
@@ -3547,6 +3559,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servisni
|
||||
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.
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Izmijeni vrstu servisnog intervala
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Osnovno
|
||||
STR_VEHICLE_DETAILS_DAYS :Dani
|
||||
STR_VEHICLE_DETAILS_PERCENT :Postotak
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Imenuj vlak
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Imenuj cestovno vozilo
|
||||
@@ -3805,7 +3821,7 @@ STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Automats
|
||||
|
||||
STR_TIMETABLE_EXPECTED :{BLACK}Očekivano
|
||||
STR_TIMETABLE_SCHEDULED :{BLACK}Raspoređeno
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Promijeni između očekivanog i raspoređenog
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Promijeni između očekivanog i zadanog
|
||||
|
||||
STR_TIMETABLE_ARRIVAL_ABBREVIATION :D:
|
||||
STR_TIMETABLE_DEPARTURE_ABBREVIATION :O:
|
||||
@@ -4270,6 +4286,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Nije mog
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vozilo je uništeno
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}Još nema dostupnih vozila
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Pokreni novu igru nakon {DATE_SHORT} ili upotrijebi NewGRF koji daje vrlo rana vozila
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Nije moguće natjerati vlak da ignorira signale dok traje opasnost...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Nije moguće promijeniti smjer vlaka...
|
||||
@@ -4312,6 +4331,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Nije mog
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Simulacija na osnovi Transport Tycoon Deluxea
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Originalna grafika za Transport Tycoon Deluxe DOS izdanje.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Originalna grafika za Transport Tycoon Deluxe DOS (Njemački) izdanje.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Originalna grafika za Transport Tycoon Deluxe Windows izdanje.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Originalni zvukovi za Transport Tycoon Deluxe DOS izdanje.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Originalni zvukovi za Transport Tycoon Deluxe Windows izdanje.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Zvučni paket bez ikakvih zvukova.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Originalna muzika za Transport Tycoon Deluxe Windows izdanje.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Muzički paket bez ikakve muzike.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Visoki uredski blok
|
||||
@@ -4681,7 +4710,7 @@ STR_VEHICLE_NAME_SHIP_SHIVERSHAKE_PASSENGER_FERRY :Putnički traje
|
||||
STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Teretni brod Yate
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Teretni brod Bakewell
|
||||
STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Teretni brod Mightymover
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Teretni brod Powernaught
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Teretni brod 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
|
||||
@@ -4797,6 +4826,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}
|
||||
|
@@ -24,61 +24,61 @@
|
||||
STR_NULL :
|
||||
STR_EMPTY :
|
||||
STR_UNDEFINED :(nedefinovaný řetězec)
|
||||
STR_JUST_NOTHING :nic
|
||||
STR_JUST_NOTHING :Nic
|
||||
|
||||
# Cargo related strings
|
||||
# Plural cargo name
|
||||
STR_CARGO_PLURAL_NOTHING :
|
||||
STR_CARGO_PLURAL_PASSENGERS :cestující
|
||||
STR_CARGO_PLURAL_PASSENGERS.gen :cestujících
|
||||
STR_CARGO_PLURAL_PASSENGERS :Cestující
|
||||
STR_CARGO_PLURAL_PASSENGERS.gen :Cestujících
|
||||
STR_CARGO_PLURAL_PASSENGERS.big :Cestující
|
||||
STR_CARGO_PLURAL_COAL :uhlí
|
||||
STR_CARGO_PLURAL_COAL :Uhlí
|
||||
STR_CARGO_PLURAL_COAL.big :Uhlí
|
||||
STR_CARGO_PLURAL_MAIL :pošta
|
||||
STR_CARGO_PLURAL_MAIL.gen :pošty
|
||||
STR_CARGO_PLURAL_MAIL.acc :poštu
|
||||
STR_CARGO_PLURAL_MAIL :Pošta
|
||||
STR_CARGO_PLURAL_MAIL.gen :Pošty
|
||||
STR_CARGO_PLURAL_MAIL.acc :Poštu
|
||||
STR_CARGO_PLURAL_MAIL.big :Pošta
|
||||
STR_CARGO_PLURAL_OIL :ropa
|
||||
STR_CARGO_PLURAL_OIL.gen :ropy
|
||||
STR_CARGO_PLURAL_OIL.acc :ropu
|
||||
STR_CARGO_PLURAL_OIL :Ropa
|
||||
STR_CARGO_PLURAL_OIL.gen :Ropy
|
||||
STR_CARGO_PLURAL_OIL.acc :Ropu
|
||||
STR_CARGO_PLURAL_OIL.big :Ropa
|
||||
STR_CARGO_PLURAL_LIVESTOCK :dobytek
|
||||
STR_CARGO_PLURAL_LIVESTOCK.gen :dobytka
|
||||
STR_CARGO_PLURAL_LIVESTOCK :Dobytek
|
||||
STR_CARGO_PLURAL_LIVESTOCK.gen :Dobytka
|
||||
STR_CARGO_PLURAL_LIVESTOCK.big :Dobytek
|
||||
STR_CARGO_PLURAL_GOODS :zboží
|
||||
STR_CARGO_PLURAL_GOODS :Zboží
|
||||
STR_CARGO_PLURAL_GOODS.big :Zboží
|
||||
STR_CARGO_PLURAL_GRAIN :zrní
|
||||
STR_CARGO_PLURAL_GRAIN :Zrní
|
||||
STR_CARGO_PLURAL_GRAIN.big :Zrní
|
||||
STR_CARGO_PLURAL_WOOD :dřevo
|
||||
STR_CARGO_PLURAL_WOOD.gen :dřeva
|
||||
STR_CARGO_PLURAL_WOOD :Dřevo
|
||||
STR_CARGO_PLURAL_WOOD.gen :Dřeva
|
||||
STR_CARGO_PLURAL_WOOD.big :Dřevo
|
||||
STR_CARGO_PLURAL_IRON_ORE :železná ruda
|
||||
STR_CARGO_PLURAL_IRON_ORE.gen :železné rudy
|
||||
STR_CARGO_PLURAL_IRON_ORE.acc :železnou rudu
|
||||
STR_CARGO_PLURAL_IRON_ORE :Železná ruda
|
||||
STR_CARGO_PLURAL_IRON_ORE.gen :Železné rudy
|
||||
STR_CARGO_PLURAL_IRON_ORE.acc :Železnou rudu
|
||||
STR_CARGO_PLURAL_IRON_ORE.big :Železná ruda
|
||||
STR_CARGO_PLURAL_STEEL :ocel
|
||||
STR_CARGO_PLURAL_STEEL.gen :oceli
|
||||
STR_CARGO_PLURAL_STEEL :Ocel
|
||||
STR_CARGO_PLURAL_STEEL.gen :Oceli
|
||||
STR_CARGO_PLURAL_STEEL.big :Ocel
|
||||
STR_CARGO_PLURAL_VALUABLES :ceniny
|
||||
STR_CARGO_PLURAL_VALUABLES.gen :cenin
|
||||
STR_CARGO_PLURAL_VALUABLES.big :Ceniny
|
||||
STR_CARGO_PLURAL_COPPER_ORE :měděná ruda
|
||||
STR_CARGO_PLURAL_COPPER_ORE.gen :měděné rudy
|
||||
STR_CARGO_PLURAL_COPPER_ORE.acc :měděnou rudu
|
||||
STR_CARGO_PLURAL_VALUABLES :Cennosti
|
||||
STR_CARGO_PLURAL_VALUABLES.gen :Cenností
|
||||
STR_CARGO_PLURAL_VALUABLES.big :Cennosti
|
||||
STR_CARGO_PLURAL_COPPER_ORE :Měděná ruda
|
||||
STR_CARGO_PLURAL_COPPER_ORE.gen :Měděné rudy
|
||||
STR_CARGO_PLURAL_COPPER_ORE.acc :Měděnou rudu
|
||||
STR_CARGO_PLURAL_COPPER_ORE.big :Měděná ruda
|
||||
STR_CARGO_PLURAL_MAIZE :kukuřice
|
||||
STR_CARGO_PLURAL_MAIZE.acc :kukuřici
|
||||
STR_CARGO_PLURAL_MAIZE :Kukuřice
|
||||
STR_CARGO_PLURAL_MAIZE.acc :Kukuřici
|
||||
STR_CARGO_PLURAL_MAIZE.big :Kukuřice
|
||||
STR_CARGO_PLURAL_FRUIT :ovoce
|
||||
STR_CARGO_PLURAL_FRUIT :Ovoce
|
||||
STR_CARGO_PLURAL_FRUIT.big :Ovoce
|
||||
STR_CARGO_PLURAL_DIAMONDS :diamanty
|
||||
STR_CARGO_PLURAL_DIAMONDS.gen :diamantů
|
||||
STR_CARGO_PLURAL_DIAMONDS :Diamanty
|
||||
STR_CARGO_PLURAL_DIAMONDS.gen :Diamantů
|
||||
STR_CARGO_PLURAL_DIAMONDS.big :Diamanty
|
||||
STR_CARGO_PLURAL_FOOD :jídlo
|
||||
STR_CARGO_PLURAL_FOOD.gen :jídla
|
||||
STR_CARGO_PLURAL_FOOD :Jídlo
|
||||
STR_CARGO_PLURAL_FOOD.gen :Jídla
|
||||
STR_CARGO_PLURAL_FOOD.big :Jídlo
|
||||
STR_CARGO_PLURAL_PAPER :papír
|
||||
STR_CARGO_PLURAL_PAPER.gen :papíru
|
||||
STR_CARGO_PLURAL_PAPER :Papír
|
||||
STR_CARGO_PLURAL_PAPER.gen :Papíru
|
||||
STR_CARGO_PLURAL_PAPER.big :Papír
|
||||
STR_CARGO_PLURAL_GOLD :zlato
|
||||
STR_CARGO_PLURAL_GOLD.gen :zlata
|
||||
@@ -441,15 +441,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Ukončit program
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Mapa světa
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Další pohled
|
||||
STR_MAP_MENU_SIGN_LIST :Seznam popisků
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Seznam měst
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Založit město
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Dotace
|
||||
@@ -732,7 +732,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalista
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnát
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Velemagnát
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Magnát století
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} získal titul '{STRING}'!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} z {COMPANY} získal titul '{STRING}'!
|
||||
@@ -1152,7 +1152,7 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Nastavení hry
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Nastavení společnosti (uchováno v uložených hrách; ovlivní pouze nové hry)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Nastavení společnosti (uchováno v uložené hře; ovlivní pouze stávající společnost)
|
||||
|
||||
STR_CONFIG_SETTING_OFF :vypnuto
|
||||
STR_CONFIG_SETTING_OFF :Vypnuto
|
||||
STR_CONFIG_SETTING_ON :Zapnuto
|
||||
STR_CONFIG_SETTING_DISABLED :Vypnuto
|
||||
|
||||
@@ -1171,9 +1171,9 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :vpravo
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maximální půjčka: {STRING}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Jak moc si může společnost půjčit (bez ohledu na inflaci)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Výše úroků: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Výše úroků půjček; pokud je zapnuta inflace, ovlivňuje i ji
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Výše úroků z půjček; rovněž ovlivňuje inflaci, pokud je zapnuta
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Cena provozu: {STRING}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Nastav cenu držby a provozu vozidel a infrastruktury
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Nastav cenu údržby a provozu vozidel a infrastruktury
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Rychlost výstavby: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Omezení výstavby AI
|
||||
STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Poruchy vozidel: {STRING}
|
||||
@@ -1185,7 +1185,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Nastav cenu vý
|
||||
STR_CONFIG_SETTING_RECESSIONS :Krize: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Pokud jsou krize zapnuty, mohou se objevit každých pár let. Během krize je snížena veškerá produkce. Po krizi se opět vrátí do původních hodnot
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Zakázat otáčení vlaků ve stanicích: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Pokud je zapnuto, vlaky se nebudou otáčet v nekoncových stanicích ani i když by to zkrátilo cestu k dalšímu cíli
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Pokud je zapnuto, vlaky se nebudou otáčet v nekoncových stanicích ani pokud by to zkrátilo cestu k dalšímu cíli
|
||||
STR_CONFIG_SETTING_DISASTERS :Katastrofy: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Katastrofy, které mohou občas zablokovat či zničit vozidla nebo infrastrukturu
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :Postoj městské rady k úpravám v oblasti: {STRING}
|
||||
@@ -1364,7 +1364,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :fialová
|
||||
STR_CONFIG_SETTING_REVERSE_SCROLLING :Posouvat pohled opačným směrem: {STRING}
|
||||
STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Chování při posouvání mapy pomocí stisku pravého tlačítka myši. Pokud vypnuto, myš pohybuje kamerou. Pokud zapnuto, myš pohybuje mapou
|
||||
STR_CONFIG_SETTING_SMOOTH_SCROLLING :Plynulé posouvání po mapě: {STRING}
|
||||
STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Ovládá jak se hlavní pohled posouvá na specifické místo na mapě, kliknutím na minimapu nebo spuštěním příkazu na posun na specifický objekt na mapě. Pokud povoleno, pohled se posouvá plynule, pokud vypnuto, skáče pohled přímo na cílové místo
|
||||
STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Ovládá jak se hlavní pohled posouvá na specifické místo na mapě, kliknutím na minimapu nebo spuštěním příkazu na posun na specifický objekt na mapě. Pokud zapnuto, pohled se posouvá plynule, pokud vypnuto, skáče pohled přímo na cílové místo
|
||||
STR_CONFIG_SETTING_MEASURE_TOOLTIP :Ukázat rozměry při použití stavebních nástrojů: {STRING}
|
||||
STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Zobrazovat vzdálenost a výškový rozdíl při výstavbě tahem.
|
||||
STR_CONFIG_SETTING_LIVERIES :Zobrazovat barvy společnosti pro: {STRING}
|
||||
@@ -1443,9 +1443,9 @@ STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Přehrávat zvu
|
||||
STR_CONFIG_SETTING_SOUND_NEWS :Noviny: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Přehrát zvuk při zobrazení novin
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR :Konec roku: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Přehrát zvukový efekty na konci roku shrnující výkon společnosti v porovnání s předchozím rokem
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Na konci roku přehrát zvuk shrnující výkon společnosti v porovnání s předchozím rokem
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM :Výstavba: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Přehrávat zvukové efekty vozidel
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Přehrávat zvuk při úspěšných stavbách a dalších akcích
|
||||
STR_CONFIG_SETTING_SOUND_CLICK :Kliknutí na tlačítko: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Pípnutí při kliku na tlačítko
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER :Katastrofy/nehody: {STRING}
|
||||
@@ -1684,6 +1684,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... form
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignorování základní grafické sady '{STRING}': nenalezeno
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignorování základní hudební sady '{STRING}': nenalazeno
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignorování základní hudební sady '{STRING}': nenalezeno
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Nedostatek paměti
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Alokování {BYTES} grafické mezipaměti selhalo. Grafická mezipaměť byla zredukována na {BYTES}. To sníží výkon OpenTTD. Pro snížení paměťových nároků můžeš zkusit vypnout 32bpp grafiku a/nebo úrovně přiblížení
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2162,6 +2164,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Vybrat v
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Označit všechen vylepšený/aktualizovaný obsah ke stáhnutí
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Odznačit vše
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Nestahovat nic
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Prohledat externí stránky
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Hledaný obsah není dostupný ve službě pro správu obsahu OpenTTD na stránkách nepřidružených k OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Opouštíš OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Podmínky pro stahování obsahu z externích stránek se různí.{}Budeš muset navštívit externí stránky pro instrukce k nainstalování obsahu do OpenTTD.{}Přeješ si pokračovat?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Filtr na značku/jméno:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Navštívit stránky
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK} Zobrazit internetové stránky pro tuto položku
|
||||
@@ -2231,6 +2237,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Změna p
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Přepnout zobrazení ukazatelů naložení. Nastavení se zamkne Ctrl+kliknutím
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Objekty budou neviditelné, ne průhledné
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Zvýraznění oblasti pokrytí
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Vypnuto
|
||||
@@ -3005,6 +3015,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Již př
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING.big} z{NBSP}{STRING.gen} do {STRING.gen}{YELLOW} ({COMPANY}{YELLOW}, do {DATE_SHORT.gen})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Kliknutím na dotaci zaměříš pohled na průmysl/město. Při stisknutém Ctrl otevřeš nový pohled
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Jména stanic - pohled na stanici zaměříš kliknutím na její jméno. Při stisknutém Ctrl otevřeš nový pohled
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}S přidrženým Ctrl můžeš označit více položek
|
||||
@@ -3020,7 +3032,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Nečeká
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Čeká tu: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} na cestě z{NBSP}{STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} z {NBSP}{STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Přijímá
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Ukázat seznam přijímaného nákladu
|
||||
@@ -3545,6 +3557,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Interval
|
||||
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
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Změnit typ servisního intervalu
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Defaultní
|
||||
STR_VEHICLE_DETAILS_DAYS :Dnů
|
||||
STR_VEHICLE_DETAILS_PERCENT :Procent
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Pojmenovat vlak
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Přejmenovat silniční vozidlo
|
||||
@@ -4275,6 +4291,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Nelze zm
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vozidlo bylo zničeno
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}Zatím nejsou dostupná žádná vozidla
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Začít hru po {DATE_SHORT} nebo použít NewGRF, která zajistí dřívější vozidla
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Nelze nechat vlak projet semafory v nebezpečí...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Nelze obrátit vlak...
|
||||
@@ -4317,6 +4336,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Nelze sm
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Simulační hra založená na Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Původní sada grafik Transport Tycoon Deluxe (verze pro DOS).
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Původní sada grafik Transport Tycoon Deluxe (německá verze pro DOS).
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Původní sada grafik Transport Tycoon Deluxe (verze pro Windows).
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Původní sada zvuků Transport Tycoon Deluxe (verze pro DOS).
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Původní sada zvuků Transport Tycoon Deluxe (verze pro Windows).
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Prázdná sada zvuků.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Původní hudba Transport Tycoon Deluxe (verze pro Windows).
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Prázná hudební sada.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Vysoký kancelářský blok
|
||||
@@ -4882,6 +4911,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}
|
||||
|
@@ -371,15 +371,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Afslut
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Kort over verden
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Nyt lokalitetsvindue
|
||||
STR_MAP_MENU_SIGN_LIST :Liste over skilte
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Byoversigt
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Stift by
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Tilskudsordninger
|
||||
@@ -650,7 +650,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalist
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnat
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mogul
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Århundredes Matador
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} får '{STRING}' status!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} fra {COMPANY} får '{STRING}' status!
|
||||
@@ -757,7 +757,7 @@ STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLAC
|
||||
STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} vil blive erklæret konkurs eller solgt, hvis ikke ydelsen stiger snart!
|
||||
STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Fussion mellem transportselskaber!
|
||||
STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} er blevet solgt til {STRING} for {CURRENCY_LONG}!
|
||||
STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Bankerupt!
|
||||
STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Bankerot!
|
||||
STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} er blevet lukket af kreditorerne og alle ejendomme er solgt!
|
||||
STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nyt transportselskab er startet!
|
||||
STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} starter konstruktion i nærheden af {TOWN}!
|
||||
@@ -1101,9 +1101,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Indstil, hvor m
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Konstruktionspriser: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Indstil prisniveau for køb og konstruktion
|
||||
STR_CONFIG_SETTING_RECESSIONS :Kriser: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Kriser kan forekomme hvis denne instilling er slået til. Under en krise falder produktionsniveauet markant (produktionsniveauet returnerer til tidligere produktionsniveau når krisen er ovre)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Lavkonjunkturer kan forekomme hvis denne indstilling er slået til. Ved lavkonjunktur falder produktionen markant (produktionen returnerer til tidligere niveau når lavkonjunkturen er ovre)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Forbyd toge at køre baglængs i stationer: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Hvis aktiverede tog ikke vil kører baglæns i ikke-terminale stationer, hvis der er en kortere vej til deres næste destination, når der bakkes
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Hvis aktiveret, vil tog ikke vende på ikke-endestationer, også selvom der er en kortere rute til deres næste destination ved at vende
|
||||
STR_CONFIG_SETTING_DISASTERS :Katastrofer: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Slå katastrofer, som lejlighedsvis kan blokere eller ødelægge køretøjer eller infrastruktur, til og fra
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :Byrådets holdning til omstrukturering: {STRING}
|
||||
@@ -1153,7 +1153,7 @@ STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Ingen
|
||||
STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Som andre industrier
|
||||
STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Efterforskning
|
||||
STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Fladt område omkring industier: {STRING}
|
||||
STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Mængden af fladt område omkring en industri. Dette sikrer tom plads vil forblive tilgængelige omkring en industri for bygge spor osv.
|
||||
STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Mængden af fladt område omkring en industri. Dette sikrer tom plads vil forblive tilgængelige omkring en industri for bygge spor osv.
|
||||
STR_CONFIG_SETTING_MULTIPINDTOWN :Tillad flere af samme slags industri per by: {STRING}
|
||||
STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Normalt vil en by ikke vil have mere end en industri af hver type. Med denne indstilling, vil det give flere industrier af samme type i samme by
|
||||
STR_CONFIG_SETTING_SIGNALSIDE :Vis signaler: {STRING}
|
||||
@@ -1240,7 +1240,7 @@ STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Forsinkelse fø
|
||||
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}
|
||||
STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Vis befolkningen i byerne i deres etiket på kortet
|
||||
STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Vis befolkningen i byerne i deres etiket på kortet
|
||||
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
|
||||
|
||||
@@ -1291,7 +1291,7 @@ STR_CONFIG_SETTING_LIVERIES_NONE :Ingen
|
||||
STR_CONFIG_SETTING_LIVERIES_OWN :Eget selskab
|
||||
STR_CONFIG_SETTING_LIVERIES_ALL :Alle selskaber
|
||||
STR_CONFIG_SETTING_PREFER_TEAMCHAT :Foretræk hold-chat med <ENTER>: {STRING}
|
||||
STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Skift bindingen af virksomheds-intern og offentlig chat til <ENTER> hhv. <Ctrl+ENTER>
|
||||
STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Skift bindingen af virksomheds-intern og offentlig chat til <ENTER> hhv. <Ctrl+ENTER>
|
||||
STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING :Rulleknappens funktion: {STRING}
|
||||
STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Aktiver rulning med to-dimensionelle muse-hjul
|
||||
STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM :Zoom kort
|
||||
@@ -1527,7 +1527,7 @@ STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :deaktiveret
|
||||
STR_CONFIG_SETTING_ZOOM_MIN :Maksimalt zoom-in niveau: {STRING}
|
||||
STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Maximalt zoom-in niveau for skærmbilledet. Højere zoom niveau vil øge hukommelseskravet
|
||||
STR_CONFIG_SETTING_ZOOM_MAX :Maksimalt zoom-ud niveau: {STRING}
|
||||
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Det maksimale udzoomnings niveau for skærmbilledet. Højere udzoomnings niveauer kan forsage forsinkelser i programmet ved brug
|
||||
STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Det maksimale udzoomnings-niveau for skærmbilledet. Højere niveauer kan forsage forsinkelser i programmet ved brug
|
||||
STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x
|
||||
STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x
|
||||
STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Normal
|
||||
@@ -1602,6 +1602,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... save
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignorere Basis Grafik sæt '{STRING}': ikke fundet
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignorere Basis Lyde sæt '{STRING}': ikke fundet
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignorere Basis Musik sæt '{STRING}': ikke fundet
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Utilstrækkelig hukommelse
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Allokering af {BYTES} spritecache fejlede. Spritecachen blev indskrænket til {BYTES}. Dette vil sænke OpenTTDs ydelse. Du kan forsøge at slå 32bpp grafik og/eller zoom-ind niveauer for at reducere hukommelseskravet
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2080,6 +2082,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Vælg op
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Vælg alt indhold, der er opdateringer til eksisterende indhold, til download
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Fravælg alle
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Fravælg alt indhold fra download
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Søg på eksterne websider
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Søgeresultat ikke tilgængeligt på OpenTTD's indholdstjeneste for websteder som ikke er associeret med OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Du forlader OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Betingelserne for download af indhold fra eksterne websteder varierer.{}Du må referere til de eksterne sites for vejledning i hvordan indholdet skal installeres i OpenTTD.{} Ønsker du at fortsætte?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Tag/navngiv filter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Besøg hjemmeside
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Besøg hjemmesiden for dette indhold
|
||||
@@ -2149,6 +2155,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Slå tra
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Slå gennemsigtighed til/fra for laste-indikatorer. CTRL+Klik for at låse værdi.
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Gør objekter usynlige i stedet for gennemsigtige
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Vis dækningsområde
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Fra
|
||||
@@ -2917,6 +2927,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Tilskuds
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} fra {STRING} til {STRING}{YELLOW} ({COMPANY}{YELLOW}, indtil {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klik på servicen for at centrere skærmen over industrien/byen. Ctrl+Klik åbner et nyt vindue ved industriens/byens lokalitet.
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Stationsnavne - klik på et navn for at centrere skærmen over stationen. Ctrl+Klik åbner et nyt vindue ved stationens lokalitet
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Hold Ctrl nede for at vælge mere end én ting
|
||||
@@ -3451,6 +3463,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servicei
|
||||
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Forøg serviceintervallet med 10. Ctrl+Klik forøger serviceintervallet med 5
|
||||
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Sænk serviceintervallet med 10. Ctrl+Klik nedsætter serviceintervallet med 5
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Ændre serviceintervallets type
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Standard
|
||||
STR_VEHICLE_DETAILS_DAYS :Dage
|
||||
STR_VEHICLE_DETAILS_PERCENT :Procent
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Giv toget et navn
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Giv køretøjet et navn
|
||||
@@ -4216,6 +4232,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Kan ikke
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Et simulationsspil baseret på Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Originalgrafik fra Transport Tycoon Deluxe DOS-version.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Originalgrafik fra Transport Tycoon Deluxe DOS (Tysk) version.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Originalgrafik fra Transport Tycoon Deluxe Windows-version.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Originallyd fra Transport Tycoon Deluxe DOS-version.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Originallyd fra Transport Tycoon Deluxe Windows-version.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :En lydpakke uden lyde.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Originalmusik fra Transport Tycoon Deluxe Windows-version.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :En musikpakke uden musik.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Høj kontorbygning
|
||||
|
@@ -371,15 +371,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Afsluiten
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Kaart
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Extra kijkvenster
|
||||
STR_MAP_MENU_SIGN_LIST :Bordenlijst
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Stedenlijst
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Sticht een stad
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subsidies
|
||||
@@ -650,7 +650,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalist
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnaat
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mogul
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Tycoon van de Eeuw
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} bereikt '{STRING}'-status!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} van {COMPANY} bereikt '{STRING}'-status!
|
||||
@@ -1450,7 +1450,7 @@ STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Toon een krant
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Verandering van geaccepteerde vrachtsoorten: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Toon een bericht over gewijzigde acceptatie van goederen van stations
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES :Subsidies: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Toon een krant over subsidie gerelateerde gebeurtenissen
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Toon een krant over subsidie gerelateerde gebeurtenissen
|
||||
STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :Algemene informatie: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION_HELPTEXT :Weergave krant over algemene gebeurtenissen, zoals de aankoop van exclusieve rechten of financiering van weg-reconstructie
|
||||
|
||||
@@ -1602,6 +1602,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... save
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... negeert Basis Grafische set '{STRING}': niet gevonden
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... negeert Basis Geluid set '{STRING}': niet gevonden
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... negeert Basis Muziek set '{STRING}': niet gevonden
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Geen geheugen meer
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Toewijzen van {BYTES} van spritecache mislukt. De spritecache werd teruggebracht tot {BYTES}. Dit zal de prestaties van OpenTTD verlagen. Om het geheugen te verminderen kunt u proberen om 32bpp graphics en / of zoom-in levels uit te schakelen
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2080,6 +2082,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Selectee
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Markeer alle updates voor bestaande content om te downloaden
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Deselecteer alles
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Markeer alle content om niet te downloaden
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Zoek externe websites
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Zoek inhoud niet beschikbaar op de server van OpenTTD op websites die niet gekoppeld zijn aan OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}U verlaat OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}De voorwaarden voor het downloaden van content van externe websites variëren.{}U moet naar de externe sites gaan voor instructies hoe de inhoud te installeren in OpenTTD.{}Wil je doorgaan?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Tag-/naamfilter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Bezoek website
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Bezoek de website voor deze inhoud
|
||||
@@ -2149,6 +2155,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Schakel
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Schakel transparantie voor laadindicatoren aan/uit. Ctrl+klik om vast te zetten
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Maak objecten onzichtbaar in plaats van transparant
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Dekkingsgebied markeren
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Uit
|
||||
@@ -2917,6 +2927,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Bestaand
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} van {STRING} naar {STRING}{YELLOW} ({COMPANY}{YELLOW}, tot {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klik op de dienst om het dorp/industrie te centreren. Ctrl+klik opent een nieuw venster op de locatie van het dorp/industrie
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Stationsnamen - klik op naam om het scherm te centreren op het station. Ctrl+klik opent een nieuw venster op de locatie van het station
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Houd Ctrl ingedrukt om meer items te kiezen
|
||||
@@ -2932,7 +2944,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Er wacht
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Wachtend: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} op weg van {STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} van {STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Accepteert
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Laat lijst van gevraagde goederen zien
|
||||
@@ -3451,6 +3463,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Onderhou
|
||||
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
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Wijzig onderhoudsinterval type
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Standaard
|
||||
STR_VEHICLE_DETAILS_DAYS :Dagen
|
||||
STR_VEHICLE_DETAILS_PERCENT :Percentage
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Hernoem trein
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Hernoem wegvoertuig
|
||||
@@ -4174,6 +4190,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Kan onde
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... voertuig is vernietigd
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}Nog geen voertuigen beschikbaar
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE} Start een nieuw spel na {DATE_SHORT} of gebruik een NewGRF dat in vroege voertuigen voorziet
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Kan trein niet het signaal laten passeren bij gevaar...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Kan de richting van de trein niet omdraaien...
|
||||
@@ -4216,6 +4235,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Kan bord
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Een simulatiespel gebaseerd op Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Originele graphics van de Transport Tycoon Deluxe DOS-versie.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Originele graphics van de Duitse Transport Tycoon Deluxe DOS-versie.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Originele graphics van de Transport Tycoon Deluxe Windows-versie.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Originele geluiden van de Transport Tycoon Deluxe DOS-versie.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Originele geluiden van de Transport Tycoon Deluxe Windows-versie.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Een geluidset zonder geluid.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Originele muziek van de Transport Tycoon Deluxe Windows-versie.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Een muziekset zonder muziek.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Hoog kantoorgebouw
|
||||
@@ -4664,6 +4693,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}
|
||||
|
@@ -371,15 +371,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Exit
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Map of world
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Extra viewport
|
||||
STR_MAP_MENU_SIGN_LIST :Sign list
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Town directory
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Found town
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subsidies
|
||||
@@ -650,7 +650,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Capitalist
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnate
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mogul
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Tycoon of the Century
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} achieves '{STRING}' status!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} of {COMPANY} achieves '{STRING}' status!
|
||||
@@ -1089,7 +1089,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Right
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maximum initial loan: {STRING2}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximum amount a company can loan (without taking inflation into account)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Interest rate: {STRING2}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Loan interest rate; also controls inflation if enabled
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Loan interest rate; also controls inflation, if enabled
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Running costs: {STRING2}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Set level of maintainance and running costs of vehicles and infrastructure
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Construction speed: {STRING2}
|
||||
@@ -1101,9 +1101,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Set how much is
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Construction costs: {STRING2}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Set level of construction and purchase costs
|
||||
STR_CONFIG_SETTING_RECESSIONS :Recessions: {STRING2}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :If enabled recessions may occur every few years. During a recession all production is significantly lower (it returns to previous level when the recession is over)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :If enabled, recessions may occur every few years. During a recession all production is significantly lower (it returns to previous level when the recession is over)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Disallow train reversing in stations: {STRING2}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :If enabled trains will not reverse in non-terminus stations, if there is a shorter path to their next destination when reversing
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :If enabled, trains will not reverse in non-terminus stations, even if there is a shorter path to their next destination when reversing
|
||||
STR_CONFIG_SETTING_DISASTERS :Disasters: {STRING2}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Toggle disasters which may occasionally block or destroy vehicles or infrastructure
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :City council's attitude towards area restructuring: {STRING2}
|
||||
@@ -1361,9 +1361,9 @@ STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Play sound for
|
||||
STR_CONFIG_SETTING_SOUND_NEWS :Newspaper: {STRING2}
|
||||
STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Play sound upon display of newspapers
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR :End of year: {STRING2}
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Play sound effect at the end of a year summarising the company's performance during the year compared to the previous year
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Play sound at the end of a year summarising the company's performance during the year compared to the previous year
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM :Construction: {STRING2}
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Play sound effect on successful constructions or other actions
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Play sound on successful constructions or other actions
|
||||
STR_CONFIG_SETTING_SOUND_CLICK :Button clicks: {STRING2}
|
||||
STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Beep when clicking buttons
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER :Disasters/accidents: {STRING2}
|
||||
@@ -1371,7 +1371,7 @@ STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Play sound effe
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE :Vehicles: {STRING2}
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Play sound effects of vehicles
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT :Ambient: {STRING2}
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Play ambient sound effects of landscape, industries and towns
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Play ambient sounds of landscape, industries and towns
|
||||
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Disable infrastructure building when no suitable vehicles are available: {STRING2}
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :When enabled, infrastructure is only available if there are also vehicles available, preventing waste of time and money on unusable infrastructure
|
||||
@@ -1428,7 +1428,7 @@ STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Display a newsp
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Arrival of first vehicle at competitor's station: {STRING2}
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Display a newspaper when the first vehicle arrives at a new competitor's station
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Accidents / disasters: {STRING2}
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Display a newspaper when accidents or disasters occurs
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Display a newspaper when accidents or disasters occur
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Company information: {STRING2}
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Display a newspaper when a new company starts, or when companies are risking to bankrupt
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Opening of industries: {STRING2}
|
||||
@@ -1448,7 +1448,7 @@ STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Display message
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :New vehicles: {STRING2}
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Display a newspaper when a new vehicle type becomes available
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Changes to cargo acceptance: {STRING2}
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Display messages about stations changing acceptance of some cargos
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Display messages about stations changing acceptance of some cargoes
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES :Subsidies: {STRING2}
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Display a newspaper about subsidy related events
|
||||
STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :General information: {STRING2}
|
||||
@@ -1471,7 +1471,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :When dragging,
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Set the distance at which signals will be built on a track up to the next obstacle (signal, junction), if signals are dragged
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} tile{P 0 "" s}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :When dragging, keep fixed distance between signals: {STRING2}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the behaviour of signal placement when Ctrl+dragging signals. If disabled, signals are placed around tunnels or bridges to avoid long stretches without signals. If enabled, signals are placed every N tiles, making alignment of signals at parallel tracks easier
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the behaviour of signal placement when Ctrl+dragging signals. If disabled, signals are placed around tunnels or bridges to avoid long stretches without signals. If enabled, signals are placed every n tiles, making alignment of signals at parallel tracks easier
|
||||
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}
|
||||
@@ -1602,6 +1602,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... save
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoring Base Graphics set '{RAW_STRING}': not found
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignoring Base Sounds set '{RAW_STRING}': not found
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoring Base Music set '{RAW_STRING}': not found
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Out of memory
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Allocating {BYTES} of spritecache failed. The spritecache was reduced to {BYTES}. This will reduce the performance of OpenTTD. To reduce memory requirements you can try to disable 32bpp graphics and/or zoom-in levels
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2080,6 +2082,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Select u
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Mark all content that is an upgrade for existing content to be downloaded
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Unselect all
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Mark all content to be not downloaded
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Search external websites
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Search content not available on OpenTTD's content service on websites not associated to OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}You are leaving OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}The terms and conditions for downloading content from external websites vary.{}You will have to refer to the external sites for instructions how to install the content into OpenTTD.{}Do you want to continue?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Tag/name filter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Visit website
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visit the website for this content
|
||||
@@ -2149,6 +2155,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Toggle t
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Toggle transparency for loading indicators. Ctrl+Click to lock
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Set objects invisible instead of transparent
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Coverage area highlight
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Off
|
||||
@@ -2917,6 +2927,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Services
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} from {STRING2} to {STRING2}{YELLOW} ({COMPANY}{YELLOW}, until {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Click on service to centre main view on industry/town. Ctrl+Click opens a new viewport on industry/town location
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Station names - click on name to centre main view on station. Ctrl+Click opens a new viewport on station location
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Hold Ctrl to select more than one item
|
||||
@@ -2932,7 +2944,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}No cargo
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Waiting: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} en-route from {STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} from {STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Accepts
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Show list of accepted cargo
|
||||
@@ -3713,7 +3725,7 @@ STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Fill the
|
||||
|
||||
STR_TIMETABLE_EXPECTED :{BLACK}Expected
|
||||
STR_TIMETABLE_SCHEDULED :{BLACK}Scheduled
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Switch between expected and schedule
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Switch between expected and scheduled
|
||||
|
||||
STR_TIMETABLE_ARRIVAL_ABBREVIATION :A:
|
||||
STR_TIMETABLE_DEPARTURE_ABBREVIATION :D:
|
||||
@@ -4178,6 +4190,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Can't ch
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vehicle is destroyed
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}No vehicles are available yet
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Start a new game after {DATE_SHORT} or use a NewGRF that provides early vehicles
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Can't make train pass signal at danger...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Can't reverse direction of train...
|
||||
@@ -4220,6 +4235,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Can't de
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :A simulation game based on Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Original Transport Tycoon Deluxe DOS edition graphics.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Original Transport Tycoon Deluxe DOS (German) edition graphics.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition graphics.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Original Transport Tycoon Deluxe DOS edition sounds.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition sounds.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :A sound pack without any sounds.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition music.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :A music pack without actual music.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Tall office block
|
||||
@@ -4549,10 +4574,10 @@ STR_VEHICLE_NAME_SHIP_FFP_PASSENGER_FERRY :FFP Passenger F
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_300_HOVERCRAFT :Bakewell 300 Hovercraft
|
||||
STR_VEHICLE_NAME_SHIP_CHUGGER_CHUG_PASSENGER :Chugger-Chug Passenger Ferry
|
||||
STR_VEHICLE_NAME_SHIP_SHIVERSHAKE_PASSENGER_FERRY :Shivershake Passenger Ferry
|
||||
STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Yate Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Bakewell Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Mightymover Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Powernaut Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Yate Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Bakewell Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Mightymover Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Powernaut Cargo Ship
|
||||
STR_VEHICLE_NAME_AIRCRAFT_SAMPSON_U52 :Sampson U52
|
||||
STR_VEHICLE_NAME_AIRCRAFT_COLEMAN_COUNT :Coleman Count
|
||||
STR_VEHICLE_NAME_AIRCRAFT_FFP_DART :FFP Dart
|
||||
@@ -4668,6 +4693,7 @@ STR_JUST_DATE_ISO :{DATE_ISO}
|
||||
STR_JUST_STRING :{STRING}
|
||||
STR_JUST_STRING_STRING :{STRING}{STRING}
|
||||
STR_JUST_RAW_STRING :{RAW_STRING}
|
||||
STR_JUST_BIG_RAW_STRING :{BIG_FONT}{RAW_STRING}
|
||||
|
||||
# Slightly 'raw' stringcodes with colour or size
|
||||
STR_BLACK_COMMA :{BLACK}{COMMA}
|
||||
|
@@ -371,15 +371,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Exit
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Map of world
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Extra viewport
|
||||
STR_MAP_MENU_SIGN_LIST :Sign list
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Town directory
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Found town
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subsidies
|
||||
@@ -650,7 +650,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Capitalist
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnate
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mogul
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Tycoon of the Century
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} achieves '{STRING}' status!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} of {COMPANY} achieves '{STRING}' status!
|
||||
@@ -1089,7 +1089,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Right
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maximum initial loan: {STRING}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximum amount a company can loan (without taking inflation into account)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Interest rate: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Loan interest rate; also controls inflation if enabled
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Loan interest rate; also controls inflation, if enabled
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Running costs: {STRING}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Set level of maintainance and running costs of vehicles and infrastructure
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Construction speed: {STRING}
|
||||
@@ -1101,9 +1101,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Set how much is
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Construction costs: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Set level of construction and purchase costs
|
||||
STR_CONFIG_SETTING_RECESSIONS :Recessions: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :If enabled recessions may occur every few years. During a recession all production is significantly lower (it returns to previous level when the recession is over)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :If enabled, recessions may occur every few years. During a recession all production is significantly lower (it returns to previous level when the recession is over)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Disallow train reversing in stations: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :If enabled trains will not reverse in non-terminus stations, if there is a shorter path to their next destination when reversing
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :If enabled, trains will not reverse in non-terminus stations, even if there is a shorter path to their next destination when reversing
|
||||
STR_CONFIG_SETTING_DISASTERS :Disasters: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Toggle disasters which may occasionally block or destroy vehicles or infrastructure
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :City council's attitude towards area restructuring: {STRING}
|
||||
@@ -1361,9 +1361,9 @@ STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Play sound for
|
||||
STR_CONFIG_SETTING_SOUND_NEWS :Newspaper: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Play sound upon display of newspapers
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR :End of year: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Play sound effect at the end of a year summarising the company's performance during the year compared to the previous year
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Play sound at the end of a year summarising the company's performance during the year compared to the previous year
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM :Construction: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Play sound effect on successful constructions or other actions
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Play sound on successful constructions or other actions
|
||||
STR_CONFIG_SETTING_SOUND_CLICK :Button clicks: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Beep when clicking buttons
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER :Disasters/accidents: {STRING}
|
||||
@@ -1371,7 +1371,7 @@ STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Play sound effe
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE :Vehicles: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Play sound effects of vehicles
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT :Ambient: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Play ambient sound effects of landscape, industries and towns
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Play ambient sounds of landscape, industries and towns
|
||||
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Disable infrastructure building when no suitable vehicles are available: {STRING}
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :When enabled, infrastructure is only available if there are also vehicles available, preventing waste of time and money on unusable infrastructure
|
||||
@@ -1448,7 +1448,7 @@ STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Display message
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :New vehicles: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Display a newspaper when a new vehicle type becomes available
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE :Changes to cargo acceptance: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Display messages about stations changing acceptance of some cargos
|
||||
STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT :Display messages about stations changing acceptance of some cargoes
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES :Subsidies: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT :Display a newspaper about subsidy related events
|
||||
STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION :General information: {STRING}
|
||||
@@ -1471,7 +1471,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :When dragging,
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Set the distance at which signals will be built on a track up to the next obstacle (signal, junction), if signals are dragged
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} tile{P 0 "" s}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :When dragging, keep fixed distance between signals: {STRING}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the behaviour of signal placement when Ctrl+dragging signals. If disabled, signals are placed around tunnels or bridges to avoid long stretches without signals. If enabled, signals are placed every N tiles, making alignment of signals at parallel tracks easier
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the behaviour of signal placement when Ctrl+dragging signals. If disabled, signals are placed around tunnels or bridges to avoid long stretches without signals. If enabled, signals are placed every n tiles, making alignment of signals at parallel tracks easier
|
||||
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}
|
||||
@@ -1602,6 +1602,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... save
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoring Base Graphics set '{STRING}': not found
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignoring Base Sounds set '{STRING}': not found
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoring Base Music set '{STRING}': not found
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Out of memory
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Allocating {BYTES} of spritecache failed. The spritecache was reduced to {BYTES}. This will reduce the performance of OpenTTD. To reduce memory requirements you can try to disable 32bpp graphics and/or zoom-in levels
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2080,6 +2082,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Select u
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Mark all content that is an upgrade for existing content to be downloaded
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Unselect all
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Mark all content to be not downloaded
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Search external websites
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Search content not available on OpenTTD's content service on websites not associated to OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}You are leaving OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}The terms and conditions for downloading content from external websites vary.{}You will have to refer to the external sites for instructions how to install the content into OpenTTD.{}Do you want to continue?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Tag/name filter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Visit website
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visit the website for this content
|
||||
@@ -2149,6 +2155,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Toggle t
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Toggle transparency for loading indicators. Ctrl+Click to lock
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Set objects invisible instead of transparent
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Coverage area highlight
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Off
|
||||
@@ -2215,18 +2225,18 @@ STR_STATION_CLASS_WAYP :Waypoints
|
||||
# Signal window
|
||||
STR_BUILD_SIGNAL_CAPTION :{WHITE}Signal Selection
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Block Signal (semaphore){}This is the most basic type of signal, allowing only one train to be in the same block at the same time
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Entry-Signal (semaphore){}Green as long as there is one or more green exit-signal from the following section of track. Otherwise it shows red
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Exit-Signal (semaphore){}Behaves in the same way as a block signal but is necessary to trigger the correct colour on entry & combo pre-signals
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Entry Signal (semaphore){}Green as long as there is one or more green exit-signal from the following section of track. Otherwise it shows red
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Exit Signal (semaphore){}Behaves in the same way as a block signal but is necessary to trigger the correct colour on entry & combo pre-signals
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Combo-Signal (semaphore){}The combo signal simply acts as both an entry and exit signal. This allows you to build large "trees" of pre-signals
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Path Signal (semaphore){}A path signal allows more than one train to enter a signal block at the same time, if the train can reserve a path to a safe stopping point. Standard path signals can be passed from the back side
|
||||
STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}One-way Path Signal (semaphore){}A path signal allows more than one train to enter a signal block at the same time, if the train can reserve a path to a safe stopping point. One-way path signals can't be passed from the back side
|
||||
STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Block Signal (electric){}This is the most basic type of signal, allowing only one train to be in the same block at the same time
|
||||
STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Entry-Signal (electric){}Green as long as there is one or more green exit-signal from the following section of track. Otherwise it shows red
|
||||
STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Exit-Signal (electric){}Behaves in the same way as a block signal but is necessary to trigger the correct colour on entry & combo pre-signals
|
||||
STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Combo-Signal (electric){}The combo signal simply acts as both an entry and exit signal. This allows you to build large "trees" of pre-signals
|
||||
STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Entry Signal (electric){}Green as long as there is one or more green exit-signal from the following section of track. Otherwise it shows red
|
||||
STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Exit Signal (electric){}Behaves in the same way as a block signal but is necessary to trigger the correct colour on entry & combo pre-signals
|
||||
STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Combo Signal (electric){}The combo signal simply acts as both an entry and exit signal. This allows you to build large "trees" of pre-signals
|
||||
STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Path Signal (electric){}A path signal allows more than one train to enter a signal block at the same time, if the train can reserve a path to a safe stopping point. Standard path signals can be passed from the back side
|
||||
STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}One-way Path Signal (electric){}A path signal allows more than one train to enter a signal block at the same time, if the train can reserve a path to a safe stopping point. One-way path signals can't be passed from the back side
|
||||
STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Signal Convert{}When selected, clicking an existing signal will convert it to the selected signal type and variant, Ctrl+Click will toggle the existing variant. Shift+Click shows estimated conversion cost
|
||||
STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Signal Convert{}When selected, clicking an existing signal will convert it to the selected signal type and variant. Ctrl+Click will toggle the existing variant. Shift+Click shows estimated conversion cost
|
||||
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Dragging signal density
|
||||
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Decrease dragging signal density
|
||||
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Increase dragging signal density
|
||||
@@ -2353,7 +2363,7 @@ STR_PLANT_TREE_TOOLTIP :{BLACK}Select t
|
||||
STR_TREES_RANDOM_TYPE :{BLACK}Trees of random type
|
||||
STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Place trees of random type. Shift toggles building/showing cost estimate
|
||||
STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Random Trees
|
||||
STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Plant trees randomly over landscape
|
||||
STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Plant trees randomly throughout the landscape
|
||||
|
||||
# Land generation window (SE)
|
||||
STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Land Generation
|
||||
@@ -2547,7 +2557,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-2011 The OpenTTD team
|
||||
STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2013 The OpenTTD team
|
||||
|
||||
# Save/load game/scenario
|
||||
STR_SAVELOAD_SAVE_CAPTION :{WHITE}Save Game
|
||||
@@ -2917,6 +2927,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Services
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} from {STRING} to {STRING}{YELLOW} ({COMPANY}{YELLOW}, until {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Click on service to centre main view on industry/town. Ctrl+Click opens a new viewport on industry/town location
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Station names - click on name to centre main view on station. Ctrl+Click opens a new viewport on station location
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Hold Ctrl to select more than one item
|
||||
@@ -2932,7 +2944,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}No cargo
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Waiting: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} en-route from {STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} from {STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Accepts
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Show list of accepted cargo
|
||||
@@ -3451,6 +3463,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servicin
|
||||
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
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Change servicing interval type
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Default
|
||||
STR_VEHICLE_DETAILS_DAYS :Days
|
||||
STR_VEHICLE_DETAILS_PERCENT :Percentage
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Name train
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Name road vehicle
|
||||
@@ -3709,7 +3725,7 @@ STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Fill the
|
||||
|
||||
STR_TIMETABLE_EXPECTED :{BLACK}Expected
|
||||
STR_TIMETABLE_SCHEDULED :{BLACK}Scheduled
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Switch between expected and schedule
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Switch between expected and scheduled
|
||||
|
||||
STR_TIMETABLE_ARRIVAL_ABBREVIATION :A:
|
||||
STR_TIMETABLE_DEPARTURE_ABBREVIATION :D:
|
||||
@@ -4174,6 +4190,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Can't ch
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vehicle is destroyed
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}No vehicles are available yet
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Start a new game after {DATE_SHORT} or use a NewGRF which provides early vehicles
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Can't make train pass signal at danger...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Can't reverse direction of train...
|
||||
@@ -4216,6 +4235,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Can't de
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :A simulation game based on Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Original Transport Tycoon Deluxe DOS edition graphics.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Original Transport Tycoon Deluxe DOS (German) edition graphics.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition graphics.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Original Transport Tycoon Deluxe DOS edition sounds.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition sounds.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :A sound pack without any sounds.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition music.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :A music pack without actual music.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Tall office block
|
||||
@@ -4545,10 +4574,10 @@ STR_VEHICLE_NAME_SHIP_FFP_PASSENGER_FERRY :FFP Passenger F
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_300_HOVERCRAFT :Bakewell 300 Hovercraft
|
||||
STR_VEHICLE_NAME_SHIP_CHUGGER_CHUG_PASSENGER :Chugger-Chug Passenger Ferry
|
||||
STR_VEHICLE_NAME_SHIP_SHIVERSHAKE_PASSENGER_FERRY :Shivershake Passenger Ferry
|
||||
STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Yate Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Bakewell Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Mightymover Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Powernaut Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Yate Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Bakewell Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Mightymover Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Powernaut Cargo Ship
|
||||
STR_VEHICLE_NAME_AIRCRAFT_SAMPSON_U52 :Sampson U52
|
||||
STR_VEHICLE_NAME_AIRCRAFT_COLEMAN_COUNT :Coleman Count
|
||||
STR_VEHICLE_NAME_AIRCRAFT_FFP_DART :FFP Dart
|
||||
@@ -4664,6 +4693,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}
|
||||
|
@@ -371,15 +371,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Quit
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Map of world
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Extra viewport
|
||||
STR_MAP_MENU_SIGN_LIST :Sign list
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Town directory
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Found town
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subsidies
|
||||
@@ -650,7 +650,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Capitalist
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnate
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mogul
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Tycoon of the Century
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} achieves '{STRING}' status!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} of {COMPANY} achieves '{STRING}' status!
|
||||
@@ -1089,7 +1089,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Right
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maximum initial loan: {STRING}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximum amount a company can loan (without taking inflation into account)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Interest rate: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Loan interest rate; also controls inflation if enabled
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Loan interest rate; also controls inflation, if enabled
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Running costs: {STRING}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Set level of maintainance and running costs of vehicles and infrastructure
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Construction speed: {STRING}
|
||||
@@ -1101,9 +1101,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Set how much is
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Construction costs: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Set level of construction and purchase costs
|
||||
STR_CONFIG_SETTING_RECESSIONS :Recessions: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :If enabled recessions may occur every few years. During a recession all production is significantly lower (it returns to previous level when the recession is over)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :If enabled, recessions may occur every few years. During a recession all production is significantly lower (it returns to previous level when the recession is over)
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Disallow train reversing in stations: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :If enabled trains will not reverse in non-terminus stations, if there is a shorter path to their next destination when reversing
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :If enabled, trains will not reverse in non-terminus stations, even if there is a shorter path to their next destination when reversing
|
||||
STR_CONFIG_SETTING_DISASTERS :Disasters: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Toggle disasters which may occasionally block or destroy vehicles or infrastructure
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :City council's attitude towards area restructuring: {STRING}
|
||||
@@ -1142,7 +1142,7 @@ STR_CONFIG_SETTING_GRADUAL_LOADING_HELPTEXT :Gradually load
|
||||
STR_CONFIG_SETTING_INFLATION :Inflation: {STRING}
|
||||
STR_CONFIG_SETTING_INFLATION_HELPTEXT :Enable inflation in the economy, where costs are slightly faster rising than payments
|
||||
STR_CONFIG_SETTING_SELECTGOODS :Deliver cargo to a station only when there is a demand: {STRING}
|
||||
STR_CONFIG_SETTING_SELECTGOODS_HELPTEXT :Only deliver cargo to a station that was requested from a loading vehicle. This prevents bad ratings for cargoes that are not serviced at a station
|
||||
STR_CONFIG_SETTING_SELECTGOODS_HELPTEXT :Only deliver cargo to a station that was requested from a loading vehicle. This prevents bad ratings for cargos that are not serviced at a station
|
||||
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_TUNNEL_LENGTH :Maximum tunnel length: {STRING}
|
||||
@@ -1361,9 +1361,9 @@ STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Play sound for
|
||||
STR_CONFIG_SETTING_SOUND_NEWS :Newspaper: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Play sound upon display of newspapers
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR :End of year: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Play sound effect at the end of a year summarising the company's performance during the year compared to the previous year
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Play sound at the end of a year summarising the company's performance during the year compared to the previous year
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM :Construction: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Play sound effect on successful constructions or other actions
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Play sound on successful constructions or other actions
|
||||
STR_CONFIG_SETTING_SOUND_CLICK :Button clicks: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Beep when clicking buttons
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER :Disasters/accidents: {STRING}
|
||||
@@ -1371,7 +1371,7 @@ STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Play sound effe
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE :Vehicles: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Play sound effects of vehicles
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT :Ambient: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Play ambient sound effects of landscape, industries and towns
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Play ambient sounds of landscape, industries and towns
|
||||
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Disable infrastructure building when no suitable vehicles are available: {STRING}
|
||||
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :When enabled, infrastructure is only available if there are also vehicles available, preventing waste of time and money on unusable infrastructure
|
||||
@@ -1428,7 +1428,7 @@ STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Display a newsp
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Arrival of first vehicle at competitor's station: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Display a newspaper when the first vehicle arrives at a new competitor's station
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Accidents / disasters: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Display a newspaper when accidents or disasters occurs
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Display a newspaper when accidents or disasters occur
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Company information: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Display a newspaper when a new company starts, or when companies are risking to bankrupt
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Opening of industries: {STRING}
|
||||
@@ -1471,7 +1471,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :When dragging,
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Set the distance at which signals will be built on a track up to the next obstacle (signal, junction), if signals are dragged
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} tile{P 0 "" s}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :When dragging, keep fixed distance between signals: {STRING}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the behavior of signal placement when Ctrl+dragging signals. If disabled, signals are placed around tunnels or bridges to avoid long stretches without signals. If enabled, signals are placed every N tiles, making alignment of signals at parallel tracks easier
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Select the behavior of signal placement when Ctrl+dragging signals. If disabled, signals are placed around tunnels or bridges to avoid long stretches without signals. If enabled, signals are placed every n tiles, making alignment of signals at parallel tracks easier
|
||||
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}
|
||||
@@ -1602,6 +1602,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... save
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoring Base Graphics set '{STRING}': not found
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignoring Base Sounds set '{STRING}': not found
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoring Base Music set '{STRING}': not found
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Out of memory
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Allocating {BYTES} of spritecache failed. The spritecache was reduced to {BYTES}. This will reduce the performance of OpenTTD. To reduce memory requirements you can try to disable 32bpp graphics and/or zoom-in levels
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2080,6 +2082,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Select u
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Mark all content that is an upgrade for existing content to be downloaded
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Unselect all
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Mark all content to be not downloaded
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Search external websites
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Search content not available on OpenTTD's content service on websites not associated to OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}You are leaving OpenTTD!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}The terms and conditions for downloading content from external websites vary.{}You will have to refer to the external sites for instructions how to install the content into OpenTTD.{}Do you want to continue?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Tag/name filter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Visit website
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visit the website for this content
|
||||
@@ -2149,6 +2155,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Toggle t
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Toggle transparency for loading indicators. Ctrl+Click to lock
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Set objects invisible instead of transparent
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Coverage area highlight
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Off
|
||||
@@ -2917,6 +2927,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Services
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} from {STRING} to {STRING}{YELLOW} ({COMPANY}{YELLOW}, until {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Click on service to center main view on industry/town. Ctrl+Click opens a new viewport on industry/town location
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Station names - click on name to center main view on station. Ctrl+Click opens a new viewport on station location
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Hold Ctrl to select more than one item
|
||||
@@ -2932,7 +2944,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}No cargo
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Waiting: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} en-route from {STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} from {STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Accepts
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Show list of accepted cargo
|
||||
@@ -3713,7 +3725,7 @@ STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Fill the
|
||||
|
||||
STR_TIMETABLE_EXPECTED :{BLACK}Expected
|
||||
STR_TIMETABLE_SCHEDULED :{BLACK}Scheduled
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Switch between expected and schedule
|
||||
STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Switch between expected and scheduled
|
||||
|
||||
STR_TIMETABLE_ARRIVAL_ABBREVIATION :A:
|
||||
STR_TIMETABLE_DEPARTURE_ABBREVIATION :D:
|
||||
@@ -4178,6 +4190,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Can't ch
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... vehicle is destroyed
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}No vehicles are available yet
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Start a new game after {DATE_SHORT} or use a NewGRF that provides early vehicles
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Can't make train pass signal at danger...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Can't reverse direction of train...
|
||||
@@ -4220,6 +4235,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Can't de
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :A simulation game based on Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Original Transport Tycoon Deluxe DOS edition graphics.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Original Transport Tycoon Deluxe DOS (German) edition graphics.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition graphics.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Original Transport Tycoon Deluxe DOS edition sounds.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition sounds.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :A sound pack without any sounds.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Original Transport Tycoon Deluxe Windows edition music.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :A music pack without actual music.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Tall office block
|
||||
@@ -4549,10 +4574,10 @@ STR_VEHICLE_NAME_SHIP_FFP_PASSENGER_FERRY :FFP Passenger F
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_300_HOVERCRAFT :Bakewell 300 Hovercraft
|
||||
STR_VEHICLE_NAME_SHIP_CHUGGER_CHUG_PASSENGER :Chugger-Chug Passenger Ferry
|
||||
STR_VEHICLE_NAME_SHIP_SHIVERSHAKE_PASSENGER_FERRY :Shivershake Passenger Ferry
|
||||
STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Yate Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Bakewell Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Mightymover Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Powernaut Cargo ship
|
||||
STR_VEHICLE_NAME_SHIP_YATE_CARGO_SHIP :Yate Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_BAKEWELL_CARGO_SHIP :Bakewell Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_MIGHTYMOVER_CARGO_SHIP :Mightymover Cargo Ship
|
||||
STR_VEHICLE_NAME_SHIP_POWERNAUT_CARGO_SHIP :Powernaut Cargo Ship
|
||||
STR_VEHICLE_NAME_AIRCRAFT_SAMPSON_U52 :Sampson U52
|
||||
STR_VEHICLE_NAME_AIRCRAFT_COLEMAN_COUNT :Coleman Count
|
||||
STR_VEHICLE_NAME_AIRCRAFT_FFP_DART :FFP Dart
|
||||
@@ -4668,6 +4693,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}
|
||||
|
@@ -293,7 +293,7 @@ STR_SORT_BY_RANGE :Atingopovo
|
||||
STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Paŭzigu la ludon
|
||||
STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Rapide pluirigu la ludon
|
||||
STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Opcioj
|
||||
STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Konservu ludon, foriru de la ludo, fermu
|
||||
STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Konservu ludon, foriru ludo, forlasi
|
||||
STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Montru mapon
|
||||
STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Montru urbaron
|
||||
STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Montru subvenciojn
|
||||
@@ -331,18 +331,18 @@ STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Landaspe
|
||||
STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Urba generado
|
||||
STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Industria generado
|
||||
STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Vojkonstruado
|
||||
STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Plantu arbojn
|
||||
STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Plantu arbojn. «Shift» aktivigita konstruado/montrante kosto takso
|
||||
STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Metu signon
|
||||
STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Loku objekton
|
||||
STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Loku objekton. «Shift» aktivigita konstruado/montrante kosto takso
|
||||
|
||||
############ range for SE file menu starts
|
||||
STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Konservu scenaron
|
||||
STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Ŝarĝu scenaron
|
||||
STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Konservu altecmapon
|
||||
STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Ŝarĝu altecmapon
|
||||
STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Fermu kreilon
|
||||
STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Forlasi scenaro kreilo
|
||||
STR_SCENEDIT_FILE_MENU_SEPARATOR :
|
||||
STR_SCENEDIT_FILE_MENU_QUIT :Fermu
|
||||
STR_SCENEDIT_FILE_MENU_QUIT :Forlasi
|
||||
############ range for SE file menu starts
|
||||
|
||||
############ range for settings menu starts
|
||||
@@ -358,7 +358,7 @@ STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Konkurantaj sig
|
||||
STR_SETTINGS_MENU_FULL_ANIMATION :Plena animado
|
||||
STR_SETTINGS_MENU_FULL_DETAIL :Plenaj detaloj
|
||||
STR_SETTINGS_MENU_TRANSPARENT_BUILDINGS :Travideblaj konstruaĵoj
|
||||
STR_SETTINGS_MENU_TRANSPARENT_SIGNS :Travideblaj staciosignoj
|
||||
STR_SETTINGS_MENU_TRANSPARENT_SIGNS :Travideblaj signoj
|
||||
############ range ends here
|
||||
|
||||
############ range for file menu starts
|
||||
@@ -369,15 +369,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Fermu
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Mondomapo
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Plia vidujo
|
||||
STR_MAP_MENU_SIGN_LIST :Afiŝa listo
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Urba katalogo
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Urbo troviĝas.
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subvencioj
|
||||
@@ -444,7 +444,7 @@ STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Mesaĝa Histori
|
||||
STR_ABOUT_MENU_LAND_BLOCK_INFO :Landkvadrataj informoj
|
||||
STR_ABOUT_MENU_SEPARATOR :
|
||||
STR_ABOUT_MENU_TOGGLE_CONSOLE :Baskuligi Konzolon
|
||||
STR_ABOUT_MENU_AI_DEBUG :Sencimigo de AI
|
||||
STR_ABOUT_MENU_AI_DEBUG :AI/Ludo skripto sencimigo
|
||||
STR_ABOUT_MENU_SCREENSHOT :Ekranfoto
|
||||
STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Pligrandiga ekranfoto
|
||||
STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Ekranfoto defaŭlte zoma
|
||||
@@ -646,7 +646,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalisto
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Manaĝisto
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Potenculo
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Plej potenca de la Jarcento
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} atingis staton de '{STRING}'!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} atingis staton de '{STRING}'!
|
||||
@@ -798,7 +798,7 @@ STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE
|
||||
STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} tre malnoviĝis
|
||||
STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}{VEHICLE} tro malnoviĝis kaj postulas anstataŭiĝon
|
||||
STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE} ne povas trovi padon por daŭrigi.
|
||||
STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} estas perdita.
|
||||
STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} estas perdita
|
||||
STR_NEWS_VEHICLE_IS_UNPROFITABLE :{WHITE}{VEHICLE} pasintjare gajnis {CURRENCY_LONG}
|
||||
|
||||
STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} haltis ĉar komanda transformo fiaskis
|
||||
@@ -840,7 +840,7 @@ STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Elekto d
|
||||
STR_GAME_OPTIONS_CURRENCY_GBP :Brita Pundo (GBP)
|
||||
STR_GAME_OPTIONS_CURRENCY_USD :Amerika Dolaro (USD)
|
||||
STR_GAME_OPTIONS_CURRENCY_EUR :Eŭro (EUR)
|
||||
STR_GAME_OPTIONS_CURRENCY_JPY :Enoj (¥)
|
||||
STR_GAME_OPTIONS_CURRENCY_JPY :Enoj (JPY)
|
||||
STR_GAME_OPTIONS_CURRENCY_ATS :Aŭstriaj Ŝilingoj (ATS)
|
||||
STR_GAME_OPTIONS_CURRENCY_BEF :Belgaj Frankoj (BEF)
|
||||
STR_GAME_OPTIONS_CURRENCY_CHF :Svisaj Frankoj (CHF)
|
||||
@@ -1042,10 +1042,14 @@ 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_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_INGAME :Kompanio agordojn (stokita en savu; tuŝas nur kuranta kompanio)
|
||||
|
||||
STR_CONFIG_SETTING_OFF :Malaktiva
|
||||
STR_CONFIG_SETTING_ON :Aktiva
|
||||
STR_CONFIG_SETTING_DISABLED :malaktiva
|
||||
STR_CONFIG_SETTING_DISABLED :Malaktiva
|
||||
|
||||
STR_CONFIG_SETTING_COMPANIES_OFF :Ne
|
||||
STR_CONFIG_SETTING_COMPANIES_OWN :Propra kompanio
|
||||
@@ -1116,7 +1120,7 @@ STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permesu trairaj
|
||||
STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Permesu trairajn strathaltejojn sur stratoj posedataj de konkurantoj: {STRING}
|
||||
STR_CONFIG_SETTING_ADJACENT_STATIONS :Permesu konstrui staciojn apude: {STRING}
|
||||
STR_CONFIG_SETTING_DYNAMIC_ENGINES :Ebligu multoblajn NewGRF-motorarojn: {STRING}
|
||||
STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Ne eblas ŝanĝi ĉi tiujn agordon dum veturiloj ĉeestas.
|
||||
STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Ne eblas ŝanĝi ĉi tiujn agordon dum veturiloj ĉeestas
|
||||
|
||||
STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Flughavenoj neniam antikviĝas: {STRING}
|
||||
|
||||
@@ -1358,7 +1362,7 @@ STR_INTRO_HIGHSCORE :{BLACK}Altpoent
|
||||
STR_INTRO_ADVANCED_SETTINGS :{BLACK}Avancitaj agordoj
|
||||
STR_INTRO_NEWGRF_SETTINGS :{BLACK}Agordoj de NewGRF
|
||||
STR_INTRO_ONLINE_CONTENT :{BLACK}Provu Enretan Enhavon
|
||||
STR_INTRO_QUIT :{BLACK}Fermu
|
||||
STR_INTRO_QUIT :{BLACK}Forlasi
|
||||
|
||||
STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Starti novan ludon. Stir-Klak por preterpasi mapan agordon.
|
||||
STR_INTRO_TOOLTIP_LOAD_GAME :{BLACK}Ŝarĝu konservitan ludon
|
||||
@@ -1382,7 +1386,7 @@ STR_INTRO_TOOLTIP_QUIT :{BLACK}Fermu 'O
|
||||
STR_INTRO_TRANSLATION :{BLACK}Ĉi tiu traduko ne havas {NUM} teksto{P "" j}. Bonvolu helpu fari OpenTTD pli bona per estigi traduktiston. Vidi readme.txt por detaloj.
|
||||
|
||||
# Quit window
|
||||
STR_QUIT_CAPTION :{WHITE}Fermi
|
||||
STR_QUIT_CAPTION :{WHITE}Forlasi
|
||||
STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}Ĉu vi vere volas fermi la ludon kaj reiri al {STRING}?
|
||||
STR_QUIT_YES :{BLACK}Jes
|
||||
STR_QUIT_NO :{BLACK}Ne
|
||||
@@ -1805,6 +1809,9 @@ STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marki ĉ
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Elektu ĝisdatigojn.
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Malelekti ĉiujn
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marki ĉiujn enhavojn neelŝutotan
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Serĉo eksteraj retejoj
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK} Serĉu enhavo ne estas disponebla en OpenTTD enhavon servon en retejoj ne asocias al OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Vi forlase OpenTTD!
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Etikeda/noma filtro:
|
||||
STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Elŝuti
|
||||
STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK}Komencu elŝuti la elektitan enhavon.
|
||||
@@ -1868,6 +1875,10 @@ STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Baskulig
|
||||
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.
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Ŝarĝregiona marko
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Malaktiva
|
||||
@@ -2252,6 +2263,7 @@ STR_SAVELOAD_OSKTITLE :{BLACK}Entajpu
|
||||
# World generation
|
||||
STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Mondgenerado
|
||||
STR_MAPGEN_MAPSIZE :{BLACK}Mapgrandeco:
|
||||
STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Selektu la grandeco de la mapo en azuleĥoj. La nombro de disponeblaj azuleĥoj estos iom pli malgranda
|
||||
STR_MAPGEN_BY :{BLACK}*
|
||||
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Kiom da urboj:
|
||||
STR_MAPGEN_DATE :{BLACK}Dato:
|
||||
@@ -2533,6 +2545,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Servoj s
|
||||
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.
|
||||
|
||||
# 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
|
||||
@@ -3031,6 +3045,10 @@ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Prizorga
|
||||
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Pliigu prizorgintervalon
|
||||
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}Malpliigu prizorgintervalon
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Ŝanĝi la tipo de servon intervalon
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Defaŭlto
|
||||
STR_VEHICLE_DETAILS_DAYS :Tagoj
|
||||
STR_VEHICLE_DETAILS_PERCENT :Procentaĵo
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Nomu trajnon
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Nomi stratveturilon
|
||||
@@ -3236,7 +3254,7 @@ STR_TIMETABLE_TITLE :{WHITE}{VEHICLE
|
||||
STR_TIMETABLE_ORDER_VIEW :{BLACK}Ordonoj
|
||||
STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Montri ordonvidujon.
|
||||
|
||||
STR_TIMETABLE_TOOLTIP :{BLACK}Horaro - Klaku ordonon por emfazi.
|
||||
STR_TIMETABLE_TOOLTIP :{BLACK}Horaro - klaku ordonon por emfazi.
|
||||
|
||||
STR_TIMETABLE_NO_TRAVEL :Neniu veturo
|
||||
STR_TIMETABLE_NOT_TIMETABLEABLE :Veturu (aŭtomata; horara ĝis sekvanta mana ordono)
|
||||
@@ -3288,11 +3306,11 @@ STR_DATE_YEAR_TOOLTIP :{BLACK}Elekti j
|
||||
|
||||
|
||||
# AI debug window
|
||||
STR_AI_DEBUG :{WHITE}Sencimigo de la AI
|
||||
STR_AI_DEBUG :{WHITE}AI/Ludo Skripto Sencimigo
|
||||
STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} (v{NUM})
|
||||
STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Nomo de la AI
|
||||
STR_AI_DEBUG_SETTINGS :{BLACK}AI Agordoj
|
||||
STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Ŝanĝi agordojn de la AI
|
||||
STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Nomo de la skripto
|
||||
STR_AI_DEBUG_SETTINGS :{BLACK}Agordoj
|
||||
STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Ŝanĝi agordojn de la skripto
|
||||
STR_AI_DEBUG_RELOAD :{BLACK}Reŝarĝi AI-on
|
||||
STR_AI_DEBUG_RELOAD_TOOLTIP :{BLACK}Mortigi la AI-on, reŝarĝi la skripton, kaj restarti la AI-on
|
||||
STR_AI_DEBUG_BREAK_ON_LABEL :{BLACK}Rompu sur:
|
||||
@@ -3304,7 +3322,7 @@ STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Vidu for
|
||||
|
||||
|
||||
# AI configuration window
|
||||
STR_AI_CONFIG_CAPTION :{WHITE}AI-agordo
|
||||
STR_AI_CONFIG_CAPTION :{WHITE}AI/Ludo Skripto Agordo
|
||||
STR_AI_CONFIG_HUMAN_PLAYER :Homa ludanto
|
||||
STR_AI_CONFIG_RANDOM_AI :Hazarda AI
|
||||
|
||||
@@ -3316,22 +3334,23 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Movi ele
|
||||
|
||||
STR_AI_CONFIG_CHANGE_NONE :
|
||||
STR_AI_CONFIG_CONFIGURE :{BLACK}Agordi
|
||||
STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Agordi parametroj de la AI
|
||||
STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Agordi parametroj de la skripto
|
||||
|
||||
# Available AIs window
|
||||
STR_AI_LIST_TOOLTIP :{BLACK}Klaki por elekti AI
|
||||
STR_AI_LIST_TOOLTIP :{BLACK}Klaki por elekti skripto
|
||||
|
||||
STR_AI_LIST_AUTHOR :{LTBLUE}Aŭtoro: {ORANGE}{STRING}
|
||||
STR_AI_LIST_VERSION :{LTBLUE}Versio: {ORANGE}{NUM}
|
||||
STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING}
|
||||
|
||||
STR_AI_LIST_ACCEPT :{BLACK}Akcepti
|
||||
STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Elekti emfazitan AI
|
||||
STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Elekti emfazita skripto
|
||||
STR_AI_LIST_CANCEL :{BLACK}Nuligi
|
||||
STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ne ŝanĝu AI-on
|
||||
|
||||
# AI Parameters
|
||||
STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametroj
|
||||
STR_AI_SETTINGS_CAPTION_AI :AI
|
||||
STR_AI_SETTINGS_CLOSE :{BLACK}Fermi
|
||||
STR_AI_SETTINGS_RESET :{BLACK}Reŝargo
|
||||
STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING}
|
||||
@@ -3488,7 +3507,7 @@ STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... nur
|
||||
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... nur konstruebla en urboj havantaj pli ol 1200 enloĝantojn
|
||||
STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... nur konstruebla en praarbaraj regionoj
|
||||
STR_ERROR_CAN_ONLY_BE_BUILT_IN_DESERT :{WHITE}... konstruebla nur en dezertaj regionoj
|
||||
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... konstruebla nur en urboj
|
||||
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... konstruebla nur en urboj (anstataŭante domoj)
|
||||
STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... konstruebla nur proksime la centro de urboj
|
||||
STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... konstruebla nur en malaltaj regionoj
|
||||
STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... lokebla nur ĉe la randoj de la mapo
|
||||
@@ -3567,7 +3586,7 @@ STR_ERROR_AIRCRAFT_MUST_BE_STOPPED_INSIDE_HANGAR :{WHITE}... deva
|
||||
STR_ERROR_TRAINS_CAN_ONLY_BE_ALTERED_INSIDE_A_DEPOT :{WHITE}Trajnoj povas esti ŝanĝitaj nur dum halto en garaĝo
|
||||
STR_ERROR_TRAIN_TOO_LONG :{WHITE}Trajno tro longas
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE :{WHITE}Ne povas inversigi direkton de veturilo...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}Ne povas turni veturilojn konsistantaj el pluraj unuoj
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}... konsistantaj el pluraj unuoj
|
||||
STR_ERROR_INCOMPATIBLE_RAIL_TYPES :Neinterŝanĝeblaj reltipoj
|
||||
|
||||
STR_ERROR_CAN_T_MOVE_VEHICLE :{WHITE}Ne povas movi veturilon
|
||||
@@ -3579,7 +3598,7 @@ STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Malĝusta gara
|
||||
|
||||
# Autoreplace related errors
|
||||
STR_ERROR_TRAIN_TOO_LONG_AFTER_REPLACEMENT :{WHITE}{VEHICLE} tro longas post anstataŭado
|
||||
STR_ERROR_AUTOREPLACE_NOTHING_TO_DO :{WHITE}Neniuj aŭtoanstataŭo/renovigo-reguloj aplikitaj.
|
||||
STR_ERROR_AUTOREPLACE_NOTHING_TO_DO :{WHITE}Neniuj aŭtoanstataŭo/renovigo reguloj aplikitaj.
|
||||
STR_ERROR_AUTOREPLACE_MONEY_LIMIT :(monlimo)
|
||||
|
||||
# Rail construction errors
|
||||
@@ -3753,7 +3772,9 @@ STR_ERROR_CAN_T_CHANGE_SIGN_NAME :{WHITE}Ne povas
|
||||
STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Ne eblas forigi signon...
|
||||
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Imitaĵo de Transport Tycoon Deluxe
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Al simulado ludo bazita sur Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
|
@@ -428,15 +428,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Välju
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Maailmakaart
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Lisa vaateaken
|
||||
STR_MAP_MENU_SIGN_LIST :Siltide nimekiri
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Linnanimistu
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Raja linn
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Toetused
|
||||
@@ -707,7 +707,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalist
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnaat
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mogul
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Sajandi suurärimees
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} saavutas '{STRING}' staatuse!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} {COMPANY}'st saavutas '{STRING}' staatuse!
|
||||
@@ -2137,6 +2137,7 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Märgi u
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Tähista allalaaditavaks kõik olemasoleva sisu uuendused
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Eemalda märgistus kõigilt
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Eemaldatakse allalaadimise märgistus
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Sa oled lahkumas OpenTTD-st!
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Sildi- ja nimefilter:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Külasta lehekülge
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Külasta lehekülge selle sisu jaoks.
|
||||
@@ -2206,6 +2207,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Õhuliin
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Vaheta laadimisnäidikute läbipaistvust. Ctrl+klõps lukustab
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Muuda esemed nähtamatuks, mitte läbipaistvaks
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Mõjupiirkonna näitamine
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Väljas
|
||||
@@ -2974,6 +2979,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Juba toe
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} kohast {STRING} kohta {STRING}{YELLOW} ({COMPANY}{YELLOW}, kuni {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Vajuta pakkumisele, et näha linna või tööstuse asukohta. Ctrl+klõps avab uue vaate ettevõtte/linna asukohast
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Jaamanimed - nimel vajutades viiakse vaade jaamale. Ctrl+klõps avab jaama asukohas uue vaate.
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Mitme asja valimiseks kasuta Ctrl-klahvi
|
||||
@@ -4273,6 +4280,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Silti ei
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Transport Tycoon Deluxe'il põhinev simulatsioonimäng
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Algse Transport Tycoon Deluxe DOSi versiooni graafika.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Algse Transport Tycoon Deluxe DOSi (Saksa) versiooni graafika.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Algse Transport Tycoon Deluxe Windowsi versiooni graafika.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Algse Transport Tycoon Deluxe DOSi versiooni helid.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Algse Transport Tycoon Deluxe Windowsi versiooni helid.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Ilma häälteta helipakk.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Algse Transport Tycoon Deluxe Windowsi versiooni muusika.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Muusikakomplekt ilma igasuguse muusikata.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Kõrge büroohoone
|
||||
|
4483
src/lang/faroese.txt
Normal file
4483
src/lang/faroese.txt
Normal file
File diff suppressed because it is too large
Load Diff
@@ -371,15 +371,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Sulje
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Maailmankartta
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Lisänäkymä
|
||||
STR_MAP_MENU_SIGN_LIST :Kylttilista
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Kaupunkihakemisto
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Perusta kaupunki
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Tuet
|
||||
@@ -650,7 +650,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Kapitalisti
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnaatti
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Moguli
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Vuosisadan pohatta
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} saavuttaa arvon '{STRING}'!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} yhtiöstä {COMPANY} saavuttaa arvon '{STRING}'!
|
||||
@@ -760,7 +760,7 @@ STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLAC
|
||||
STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Konkurssi!
|
||||
STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} on suljettu velkojien toimesta ja kaikki omaisuus on myyty pois!
|
||||
STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Uusi kuljetusyhtiö perustettu!
|
||||
STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} aloittaa rakentamisen kaupugin {TOWN} lähistölle!
|
||||
STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} aloittaa rakentamisen kaupungin {TOWN} lähistölle!
|
||||
STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}Yhtiön {STRING} on ottanut haltuun {STRING}!
|
||||
STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(pääjohtaja)
|
||||
|
||||
@@ -1361,9 +1361,9 @@ STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Toista ääni t
|
||||
STR_CONFIG_SETTING_SOUND_NEWS :Sanomalehti: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Toista ääni sanomalehden ilmestyessä
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR :Vuoden loppu: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Toista ääniefekti vuoden lopussa verrattaessa yhtiön tulosta edelliseen vuoteen
|
||||
STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Toista ääni vuoden lopussa verrattaessa yhtiön tulosta edelliseen vuoteen
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM :Rakentaminen: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Toista ääniefekti onnistuneen rakennus- tai muun toiminnon jälkeen
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Toista ääni onnistuneen rakennus- tai muun toiminnon jälkeen
|
||||
STR_CONFIG_SETTING_SOUND_CLICK :Painikkeiden klikkaus: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Piippaa klikattaessa painikkeita
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER :Vahingot/onnettomuudet: {STRING}
|
||||
@@ -1416,7 +1416,7 @@ STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Lentokoneiden h
|
||||
STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Määritä oletushuoltoväli uusille lentokoneille mikäli kulkuneuvolle ei ole määritelty erillistä huoltoväliä
|
||||
STR_CONFIG_SETTING_SERVINT_SHIPS :Laivojen huoltoväli oletuksena: {STRING}
|
||||
STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Määritä oletushuoltoväli uusille laivoille mikäli kulkuneuvolle ei ole määritelty erillistä huoltoväliä
|
||||
STR_CONFIG_SETTING_NOSERVICE :Huollot pois käytöstä, kun rikkoutumiset on pois: {STRING}
|
||||
STR_CONFIG_SETTING_NOSERVICE :Poista huollot käytöstä kun ajoneuvojen rikkoutuminen on poistettu käytöstä: {STRING}
|
||||
STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Mikäli käytössä, kulkuneuvoja ei huolleta jos ne eivät voi rikkoutua
|
||||
STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Ota käyttöön vaunujen nopeusrajoitukset: {STRING}
|
||||
STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Mikäli käytössä, vaunujen nopeusrajoitusta käytetään junan maksiminopeuden määrittämisessä
|
||||
@@ -1471,7 +1471,7 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Opastimien väl
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Määrittää etäisyyden opastimien välillä seuraavaan esteeseen saakka (opastin, risteys) opastimia vedettäessä
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} ruutu{P 0 "" a}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Vedettäessä, pidä opastimien välinen matka vakiona: {STRING}
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Valitse käyttäytyminen vedettäessä opastimia Ctrl-näppäin pohjassa. Mikäli pois käytöstä, opastimia rakennetaan siltojen ja tunnelien ympärille pitkien opastimista vapaiden alueiden välttämiseksi. Mikäli käytössä, opastimia rakennetaan N ruudun välein, tehden vierekkäisten ratojen opastimien kohdistamisesta helpompaa
|
||||
STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Valitse käyttäytyminen vedettäessä opastimia Ctrl-näppäin pohjassa. Mikäli pois käytöstä, opastimia rakennetaan siltojen ja tunnelien ympärille pitkien opastimista vapaiden alueiden välttämiseksi. Mikäli käytössä, opastimia rakennetaan n ruudun välein, tehden vierekkäisten ratojen opastimien kohdistamisesta helpompaa
|
||||
STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Rakenna oletuksena siipiopastimia ennen vuotta: {STRING}
|
||||
STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Valitse vuosi jonka jälkeen käytetään sähköisiä opastimia. Ennen tätä vuotta käytetään siipiopastimia (joilla on sama toiminnallisuus mutta eri ulkonäkö)
|
||||
STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Käytä graafista opastinkäyttöliittymää: {STRING}
|
||||
@@ -1504,7 +1504,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING :Kaupunkien peru
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Mikäli käytössä, pelaajat voivat perustaa uusia kaupunkeja
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Kielletty
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Sallittu
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Sallittu, oma kaupugin kaava
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Sallittu, oma kaupungin kaava
|
||||
|
||||
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Puiden istutus pelissä: {STRING}
|
||||
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Määrittää puiden sattumanvaraisen luomisen. Tämä voi vaikuttaa teollisuuslaitoksiin jotka ovat riippuvaisia puiden kasvamisesta, esimerkiksi sahat
|
||||
@@ -1602,6 +1602,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... peli
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ohitetaan perusgrafiikkapaketti '{STRING}': ei löydetty
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ohitetaan äänipaketti '{STRING}': ei löydetty
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ohitetaan musiikkipaketti '{STRING}': ei löydetty
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Muisti lopussa
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}{BYTES} sprite-välimuistin varaaminen epäonnistui. Sprite-välimuistin kooksi valittiin {BYTES}. Tämä heikentää OpenTTD:n suorituskykyä. Vähentääksesi muistivaatimuksia voit kokeilla poistaa käytöstä 32bpp-grafiikat ja/tai lähennystasoja
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2080,6 +2082,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Valitse
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Valitse kaikki sisältö, joka on päivitys nykyiseen sisältöön, ladattavaksi
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Poista valinnat
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Merkitse kaikki sisältö ei-ladattavaksi
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Etsi ulkopuolisilta verkkosivuilta
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Etsi OpenTTD:n ulkopuolisilta verkkosivuilta sisältöä, jota ei ole saatavilla OpenTTD:n sisältöpalvelussa
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Olet poistumassa OpenTTD:stä!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Ulkopuolisilta verkkosivuilta ladattaessa käyttöehdot voivat vaihdella.{}Sinun on noudatettava ulkopuolisen sivuston ohjeita sisällön asentamiseksi OpenTTD:hen.{}Haluatko jatkaa?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Avainsana/nimi suodatus:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Vieraile verkkosivulla
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Vieraile sisällön verkkosivulla
|
||||
@@ -2149,6 +2155,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Muuta aj
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Muuta lastausilmaisimien läpinäkyvyyttä. Ctrl+Klik lukitaksesi
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Tee kohteista läpinäkyvyyden sijaan näkymättömiä
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Vaikutusalueen korostus
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}pois
|
||||
@@ -2917,6 +2927,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Käytety
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} välille {STRING}-{STRING}{YELLOW} ({COMPANY}{YELLOW}, {DATE_SHORT} asti)
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Napsauta palvelua keskittääksesi päänäkymän teollisuuteen/kaupunkiin. Ctrl+Klik avaa uuden näkymäikkunan teollisuuden/kaupungin sijaintiin
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Asemien nimet - napsauta nimeä keskittääksesi päänäkymän asemaan. Ctrl+Klik avaa uuden näkymäikkunan aseman sijaintiin
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Pidä Ctrl-näppäin painettuna valitaksesi useamman kuin yhden vaihtoehdon
|
||||
@@ -2932,7 +2944,7 @@ STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Minkää
|
||||
STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES}
|
||||
STR_STATION_VIEW_WAITING_TITLE :{BLACK}Lähdössä: {WHITE}{STRING}
|
||||
STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG}
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} tuotu asemalta {STATION})
|
||||
STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} asemalta {STATION})
|
||||
|
||||
STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Ottaa vastaan
|
||||
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Näytä luettelo vastaanotettavasta rahdista.
|
||||
@@ -3177,7 +3189,7 @@ STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Nopeus:
|
||||
STR_PURCHASE_INFO_SPEED :{BLACK}Nopeus: {GOLD}{VELOCITY}
|
||||
STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}Nopeus merellä: {GOLD}{VELOCITY}
|
||||
STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}Nopeus kanaalissa/joessa: {GOLD}{VELOCITY}
|
||||
STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Käyttökukustannus: {GOLD}{CURRENCY_LONG}/vuosi
|
||||
STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Käyttökustannus: {GOLD}{CURRENCY_LONG}/vuosi
|
||||
STR_PURCHASE_INFO_CAPACITY :{BLACK}Kapasiteetti: {GOLD}{CARGO_LONG} {STRING}
|
||||
STR_PURCHASE_INFO_REFITTABLE :(sovitettava)
|
||||
STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Suunniteltu: {GOLD}{NUM}{BLACK} Elinikä: {GOLD}{COMMA} vuo{P si tta}
|
||||
@@ -3359,7 +3371,7 @@ STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Keskitä
|
||||
STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Keskitä näkymä lentokoneen sijaintiin. Ctrl+Klik seuraa lentokonetta päänäkymässä
|
||||
|
||||
STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Lähetä juna veturitalliin. Ctrl+Klik suorittaa vain huollon
|
||||
STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Lähetä ajoneuvo huoltoasemalle. Ctrl+Klik suorittaa vain huollon
|
||||
STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Lähetä ajoneuvo varikolle. Ctrl+Klik suorittaa vain huollon
|
||||
STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Lähetä laiva telakalle. Ctrl+Klik suorittaa vain huollon
|
||||
STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Lähetä lentokone lentokonehalliin. Ctrl+Klik suorittaa vain huollon
|
||||
|
||||
@@ -3430,7 +3442,7 @@ STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Ikä: {L
|
||||
STR_VEHICLE_INFO_AGE :{COMMA} vuo{P si tta} ({COMMA})
|
||||
STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} vuo{P si tta} ({COMMA})
|
||||
|
||||
STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Maks. nopeus: {LTBLUE}{VELOCITY}
|
||||
STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Huippunopeus: {LTBLUE}{VELOCITY}
|
||||
STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}Suurin nopeus: {LTBLUE}{VELOCITY} {BLACK}Toimintasäde: {LTBLUE}{COMMA} ruutua
|
||||
STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Paino: {LTBLUE}{WEIGHT_SHORT} {BLACK}Teho: {LTBLUE}{POWER}{BLACK} Maks. nopeus: {LTBLUE}{VELOCITY}
|
||||
STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Paino: {LTBLUE}{WEIGHT_SHORT} {BLACK}Teho: {LTBLUE}{POWER}{BLACK} Maks. nopeus: {LTBLUE}{VELOCITY} {BLACK}Maks. T.E.: {LTBLUE}{FORCE}
|
||||
@@ -3444,13 +3456,17 @@ STR_VEHICLE_INFO_CAPACITY :{BLACK}Kapasite
|
||||
STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Kapasiteetti: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM})
|
||||
STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasiteetti: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING}
|
||||
|
||||
STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Siirrä rahaa: {LTBLUE}{CURRENCY_LONG}
|
||||
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_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ä
|
||||
|
||||
STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Muuta huoltovälien tyyppiä
|
||||
STR_VEHICLE_DETAILS_DEFAULT :Oletus
|
||||
STR_VEHICLE_DETAILS_DAYS :Päiviä
|
||||
STR_VEHICLE_DETAILS_PERCENT :Prosentteja
|
||||
|
||||
STR_QUERY_RENAME_TRAIN_CAPTION :{WHITE}Nimeä juna
|
||||
STR_QUERY_RENAME_ROAD_VEHICLE_CAPTION :{WHITE}Nimeä ajoneuvo
|
||||
@@ -3744,7 +3760,7 @@ STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Näytä
|
||||
STR_AI_GAME_SCRIPT :{BLACK}Peliskripti
|
||||
STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Tarkista peliskriptin loki
|
||||
|
||||
STR_ERROR_AI_NO_AI_FOUND :Sopivaa tekoälyä ei löydetty.{}Tämä tekoäly ei tee mitään.{}Voit ladata tekoälyjä 'Online-sisältö' järjestelmällä
|
||||
STR_ERROR_AI_NO_AI_FOUND :Sopivaa tekoälyä ei löydetty.{}Tämä tekoäly ei tee mitään.{}Voit ladata tekoälyjä 'Online-sisältö'-järjestelmän kautta
|
||||
STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Yksi käynnissä olevista skripteistä kaatui. Ilmoita tästä skriptin kehittäjälle littäen mukaan kuvankaappaus Tekoälyn/Peliskriptin virheenjäljitys -ikkunasta
|
||||
STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Tekoälyn/Peliskriptin virheenjäljitysikkuna on vain palvelimen käytettävissä
|
||||
|
||||
@@ -4034,7 +4050,7 @@ STR_ERROR_INCOMPATIBLE_RAIL_TYPES :Raiteet eivät
|
||||
STR_ERROR_CAN_T_MOVE_VEHICLE :{WHITE}Liikennevälinettä ei voi poistaa...
|
||||
STR_ERROR_REAR_ENGINE_FOLLOW_FRONT :{WHITE}Moottorivaunun takaosa seuraa aina etuosaansa
|
||||
STR_ERROR_UNABLE_TO_FIND_ROUTE_TO :{WHITE}Reittiä paikalliselle veturitallille ei löydy.
|
||||
STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Paikallista huoltoasemaa ei löydy.
|
||||
STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Paikallista varikkoa ei löydy.
|
||||
|
||||
STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Väärä varikkotyyppi
|
||||
|
||||
@@ -4145,7 +4161,7 @@ STR_ERROR_CAN_T_STOP_START_SHIP :{WHITE}Laivaa e
|
||||
STR_ERROR_CAN_T_STOP_START_AIRCRAFT :{WHITE}Lentokonetta ei voi pysäyttää/laittaa liikkeelle...
|
||||
|
||||
STR_ERROR_CAN_T_SEND_TRAIN_TO_DEPOT :{WHITE}Junan lähettäminen veturitalliin ei onnistu...
|
||||
STR_ERROR_CAN_T_SEND_ROAD_VEHICLE_TO_DEPOT :{WHITE}Ajoneuvon lähettäminen huoltoasemalle ei onnistu...
|
||||
STR_ERROR_CAN_T_SEND_ROAD_VEHICLE_TO_DEPOT :{WHITE}Ajoneuvon lähettäminen varikolle ei onnistu...
|
||||
STR_ERROR_CAN_T_SEND_SHIP_TO_DEPOT :{WHITE}Laivaa ei voi lähettää telakalle...
|
||||
STR_ERROR_CAN_T_SEND_AIRCRAFT_TO_HANGAR :{WHITE}Lentokonetta ei voi lähettää lentokonehalliin...
|
||||
|
||||
@@ -4174,6 +4190,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Huoltov
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... kulkuneuvo on tuhoutunut
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}Kulkuneuvoja ei ole vielä saatavilla
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Aloita peli {DATE_SHORT} jälkeen tai käytä NewGRF:ää joka tarjoaa aikaisempia kulkuneuvoja
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Junaa ei voi pakottaa jatkamaan opastimen ohi vaaratilanteessa...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Junan suuntaa ei voi kääntää...
|
||||
@@ -4216,6 +4235,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Kylttiä
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Transport Tycoon Deluxeen pohjautuva simulaatiopeli
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Alkuperäiset Transport Tycoon Deluxen DOS-version grafiikat.
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Alkuperäiset Saksassa julkaistun Transport Tycoon Deluxen DOS-version grafiikat.
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Alkuperäiset Transport Tycoon Deluxen Windows-version grafiikat.
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Alkuperäiset Transport Tycoon Deluxen DOS-version äänet.
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Alkuperäiset Transport Tycoon Deluxen Windows-version äänet.
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Äänipaketti, jossa ei ole ääniä.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Alkuperäinen Transport Tycoon Deluxen Windows-version musiikki.
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Musiikkipaketti, jossa ei ole musiikkia.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Korkea toimistorakennus
|
||||
@@ -4664,6 +4693,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}
|
||||
|
@@ -372,15 +372,15 @@ STR_FILE_MENU_SEPARATOR :
|
||||
STR_FILE_MENU_EXIT :Quitter le jeu
|
||||
############ range ends here
|
||||
|
||||
############ range for map menu starts
|
||||
# map menu
|
||||
STR_MAP_MENU_MAP_OF_WORLD :Carte du monde
|
||||
STR_MAP_MENU_EXTRA_VIEW_PORT :Vue supplémentaire
|
||||
STR_MAP_MENU_SIGN_LIST :Liste des panneaux
|
||||
############ range for town menu starts, yet the town directory is shown in the map menu in the scenario editor
|
||||
|
||||
############ range for town menu starts
|
||||
STR_TOWN_MENU_TOWN_DIRECTORY :Annuaire des villes
|
||||
############ end of the 'Display map' dropdown
|
||||
STR_TOWN_MENU_FOUND_TOWN :Fonder une ville
|
||||
############ end of the 'Town' dropdown
|
||||
############ range ends here
|
||||
|
||||
############ range for subsidies menu starts
|
||||
STR_SUBSIDIES_MENU_SUBSIDIES :Subventions
|
||||
@@ -651,7 +651,7 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Capitaliste
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :Magnat
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Grand ponte
|
||||
STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Tycoon du siècle
|
||||
STR_HIGHSCORE_NAME :{BIG_FONT}{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY}
|
||||
STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA})
|
||||
STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} atteint le statut de «{NBSP}{STRING}{NBSP}»{NBSP}!
|
||||
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} atteint le statut de «{NBSP}{STRING}{NBSP}»{NBSP}!
|
||||
@@ -1065,11 +1065,11 @@ STR_CONFIG_SETTING_RESTRICT_CHANGED_AGAINST_NEW :Paramètres ave
|
||||
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_HELPTEXT :{BLACK}Restreint la liste ci-dessous à certains types de paramètres
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_ALL :Tous les paramètres
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Paramètres du client (n'est pas enregistré dans les sauvegardes{NBSP}; affecte toutes les parties)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Paramètres de jeu (enregistré dans les sauvegardes{NBSP}; affecte uniquement les nouvelles parties)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Paramètres de jeu (enregistrés dans les sauvegardes{NBSP}; affecte uniquement la partie actuelle)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Paramètres de compagnie (enregistrés dans les sauvegardes{NBSP}; affecte uniquement les nouvelles parties)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Paramètres de compagnie (enregistré dans les sauvegardes{NBSP}; affecte uniquement la compagnie actuelle)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_CLIENT :Paramètres du client (ne sont pas enregistrés dans les sauvegardes{NBSP}; affectent toutes les parties)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Paramètres de jeu (enregistrés dans les sauvegardes{NBSP}; affectent uniquement les nouvelles parties)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Paramètres de jeu (enregistrés dans les sauvegardes{NBSP}; affectent uniquement la partie actuelle)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Paramètres de compagnie (enregistrés dans les sauvegardes{NBSP}; affectent uniquement les nouvelles parties)
|
||||
STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Paramètres de compagnie (enregistrés dans les sauvegardes{NBSP}; affectent uniquement la compagnie actuelle)
|
||||
|
||||
STR_CONFIG_SETTING_OFF :Désactivé
|
||||
STR_CONFIG_SETTING_ON :Activé
|
||||
@@ -1090,7 +1090,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :À droite
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Emprunt initial maximum{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Montant maximum qu'une compagnie peut emprunter (sans tenir compte de l'inflation)
|
||||
STR_CONFIG_SETTING_INTEREST_RATE :Taux d'intérêt{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Taux d’intérêt de l'emprunt; contrôle également l'inflation si activé
|
||||
STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Taux d’intérêt de l'emprunt{NBSP}; contrôle également l'inflation si activé
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS :Coûts d'entretien{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Définit le niveau des coûts d'entretien et de fonctionnement des véhicules et des infrastructures
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Vitesse de construction{NBSP}: {STRING}
|
||||
@@ -1102,9 +1102,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Définit combie
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Coûts de construction{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Définit le niveau des coûts de construction et d'achat
|
||||
STR_CONFIG_SETTING_RECESSIONS :Récessions{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Si activé, des récessions peuvent se produire toutes les quelques années. Pendant une récession, toute la production baisse de façon significative (elle retourne à son niveau antérieur à la fin de la récession)
|
||||
STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Si activé, des récessions peuvent se produire toutes les quelques années. Pendant une récession, toute la production baisse de façon significative (elle retourne à son niveau antérieur à la fin de la récession).
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING :Interdire le retournement des trains dans les stations{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si activé, les trains de se retourneront plus dans les stations non terminus, s'il y a un chemin plus court vers leur prochaine destination en se retournant
|
||||
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si activé, les trains ne feront plus demi-tour dans les stations non terminus, même si ce faisant il y avait un chemin plus court vers leur prochaine destination.
|
||||
STR_CONFIG_SETTING_DISASTERS :Catastrophes{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Activer/Désactiver les catastrophes qui peuvent occasionnellement bloquer ou détruire des véhicules ou des infrastructures
|
||||
STR_CONFIG_SETTING_CITY_APPROVAL :Attitude du conseil municipal envers la restructuration de la zone{NBSP}: {STRING}
|
||||
@@ -1367,8 +1367,8 @@ STR_CONFIG_SETTING_SOUND_CONFIRM :Construction{NB
|
||||
STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Jouer un effet sonore pour les constructions réussies ou d'autres actions
|
||||
STR_CONFIG_SETTING_SOUND_CLICK :Clics des boutons{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Émettre un bip lors des clics sur les boutons
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER :Désastres/accidents{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Jouer les effets sonores des accidents et des désastres
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER :Catastrophes/Accidents{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Jouer les effets sonores des accidents et des catastrophes
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE :Véhicules{NBSP}: {STRING}
|
||||
STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Jouer les effets sonores des véhicules
|
||||
STR_CONFIG_SETTING_SOUND_AMBIENT :Ambiance{NBSP}: {STRING}
|
||||
@@ -1429,7 +1429,7 @@ STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Afficher un jou
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Arrivée du premier véhicule dans la station d'un concurrent: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Afficher un journal quand le premier véhicule arrive à une nouvelle station d'un concurrent
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Accidents / Catastrophes: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Afficher un journal quand des accidents ou des désastres se produisent
|
||||
STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Afficher un journal quand des accidents ou des catastrophes se produisent
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Informations corporatives: {STRING}
|
||||
STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Afficher un journal quand une nouvelle compagnie débute, ou quand des compagnies risquent la banqueroute
|
||||
STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Ouvertures d'industries: {STRING}
|
||||
@@ -1603,6 +1603,8 @@ STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... le f
|
||||
STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... graphiques de base '{STRING}' ignorés{NBSP}: non trouvés
|
||||
STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... sons de base '{STRING}' ignorés{NBSP}: non trouvés
|
||||
STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... musique de base '{STRING}' ignorée{NBSP}: non trouvée
|
||||
STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Plus de mémoire
|
||||
STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}L'allocation de {BYTES} pour le cache des sprites a échoué. Le cache des sprites a été réduit à {BYTES}. Cela va réduire les performances d'OpenTTD. Pour diminuer les besoins en mémoire vous pouvez essayer de désactiver les graphismes 32bpp et/ou les niveaux de zoom avant
|
||||
|
||||
# Intro window
|
||||
STR_INTRO_CAPTION :{WHITE}OpenTTD {REV}
|
||||
@@ -2081,6 +2083,10 @@ STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Sélecti
|
||||
STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Marquer comme étant à télécharger tous les modules qui sont une mise à jour des modules existants
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Désélectionner tout
|
||||
STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marquer tous les modules comme étant à ne pas télécharger
|
||||
STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Recherche sur des sites externes
|
||||
STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Chercher du contenu non disponible dans le service de contenu d'OpenTTD sur des sites non-associés à OpenTTD
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Vous quittez OpenTTD{NBSP}!
|
||||
STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Les termes et conditions du téléchargement de contenu depuis des sites externes varient.{}Vous devrez vous référer aux sites externes pour les instructions d'installation du contenu dans OpenTTD.{}Voulez-vous continuer{NBSP}?
|
||||
STR_CONTENT_FILTER_TITLE :{BLACK}Filtre sur les étiquettes/le nom{NBSP}:
|
||||
STR_CONTENT_OPEN_URL :{BLACK}Visiter le site web
|
||||
STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visiter le site web pour ce module
|
||||
@@ -2150,6 +2156,10 @@ STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Transpar
|
||||
STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Transparence des indicateurs de chargement.{}Ctrl-clic pour verrouiller.
|
||||
STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Alterner entre transparence et invisibilité des objets
|
||||
|
||||
# Linkgraph legend window
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
|
||||
# Base for station construction window(s)
|
||||
STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Afficher la zone couverte
|
||||
STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Désactivé
|
||||
@@ -2764,7 +2774,7 @@ STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Vous ê
|
||||
|
||||
STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Ajout impossible{NBSP}: GRF ID en double
|
||||
STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Module exact non trouvé (GRF compatible chargé)
|
||||
STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Impossible d'ajouter le module: la limite des modules NewGRF a été atteinte
|
||||
STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Impossible d'ajouter le module{NBSP}: la limite des modules NewGRF a été atteinte
|
||||
|
||||
STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}GRF(s) compatible(s) chargé(s) pour les modules absents
|
||||
STR_NEWGRF_DISABLED_WARNING :{WHITE}Module(s) GRF absent(s) désactivés
|
||||
@@ -2918,6 +2928,8 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Subventi
|
||||
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} de {STRING} à {STRING}{YELLOW} ({COMPANY}{YELLOW}, jusqu'à {DATE_SHORT})
|
||||
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Cliquer sur le service pour centrer la vue principale sur l'industrie ou la ville. Ctrl-clic pour ouvrir une nouvelle vue sur l'industrie ou la ville.
|
||||
|
||||
# Story book window
|
||||
|
||||
# Station list window
|
||||
STR_STATION_LIST_TOOLTIP :{BLACK}Nom des stations - Cliquer sur un nom pour centrer la vue principale sur la station. Ctrl-clic pour ouvrir une nouvelle vue sur la station.
|
||||
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Ctrl-clic pour sélectionner plus d'un élément
|
||||
@@ -4179,6 +4191,9 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Impossib
|
||||
|
||||
STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... véhicule détruit
|
||||
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE :{WHITE}Il n'y a pas encore de véhicules disponibles
|
||||
STR_ERROR_NO_VEHICLES_AVAILABLE_EXPLANATION :{WHITE}Commencer un nouvelle partie après {DATE_SHORT} ou utiliser un NewGRF qui propose des véhicules plus tôt
|
||||
|
||||
# Specific vehicle errors
|
||||
STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Impossible de forcer le train à avancer sous le danger...
|
||||
STR_ERROR_CAN_T_REVERSE_DIRECTION_TRAIN :{WHITE}Impossible de faire faire demi-tour...
|
||||
@@ -4221,6 +4236,16 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}Impossib
|
||||
# Translatable comment for OpenTTD's desktop shortcut
|
||||
STR_DESKTOP_SHORTCUT_COMMENT :Un jeu de simulation basé sur Transport Tycoon Deluxe
|
||||
|
||||
# Translatable descriptions in media/baseset/*.ob* files
|
||||
STR_BASEGRAPHICS_DOS_DESCRIPTION :Graphiques originaux de Transport Tycoon Deluxe (version DOS).
|
||||
STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Graphiques originaux de Transport Tycoon Deluxe (version DOS allemande).
|
||||
STR_BASEGRAPHICS_WIN_DESCRIPTION :Graphiques originaux de Transport Tycoon Deluxe (version Windows).
|
||||
STR_BASESOUNDS_DOS_DESCRIPTION :Sons originaux de Transport Tycoon Deluxe (version DOS).
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Sons originaux de Transport Tycoon Deluxe (version Windows).
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Un pack de sons sans sons.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Musiques originales de Transport Tycoon Deluxe (version Windows).
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Un pack de musiques sans musiques.
|
||||
|
||||
##id 0x2000
|
||||
# Town building names
|
||||
STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_1 :Grand immeuble de bureaux
|
||||
@@ -4669,6 +4694,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}
|
||||
|
5130
src/lang/gaelic.txt
Normal file
5130
src/lang/gaelic.txt
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user