mirror of https://github.com/OpenRCT2/OpenRCT2.git
Merge branch 'develop'
This commit is contained in:
commit
5afae08d94
|
@ -31,7 +31,7 @@ jobs:
|
|||
- name: Commit and push
|
||||
working-directory: OpenRCT2
|
||||
run: |
|
||||
if [[ $(git status -s) ]]; then
|
||||
if [[ $(git status --porcelain) ]]; then
|
||||
echo "Committing and pushing..."
|
||||
git add .
|
||||
git config --global user.name "OpenRCT2 git bot"
|
||||
|
|
|
@ -179,6 +179,7 @@ The following people are not part of the development team, but have been contrib
|
|||
* Sean Payne (seanmajorpayne)
|
||||
* Soham Roy (sohamroy19)
|
||||
* Gaven Rendell (Rendello)
|
||||
* Christian Haase (chrhaase)
|
||||
|
||||
## Toolchain
|
||||
* (Balletie) - macOS
|
||||
|
@ -215,7 +216,7 @@ The following people are not part of the development team, but have been contrib
|
|||
* Danish - Lars P. Sørensen (LPSGizmo)
|
||||
* Dutch - Michael Steenbeek (Gymnasiast), Yannic Geurts (xzbobzx), (mrtnptrs), Thomas den Hollander (ThomasdenH), (hostbrute), Marijn van der Werf (marijnvdwerf), Tom Kroes (ThePsionic); reviewing and discussion: Aaron van Geffen (AaronVanGeffen), (Balletie) and Sijmen Schoon (SijmenSchoon).
|
||||
* Finnish - (DJHasis), (Zode), (TheWing)
|
||||
* French - (fbourigault), Joël Troch (JoelTroch), Michael Steenbeek (Gymnasiast), Romain Vigier (rvgr), (AziasYur), Hugo Courtial (s0r00t), David Delobel (incyclum), Nicolas Hawrysh (xp4xbox)
|
||||
* French - (fbourigault), Joël Troch (JoelTroch), Michael Steenbeek (Gymnasiast), Romain Vigier (rmnvgr), (AziasYur), Hugo Courtial (s0r00t), David Delobel (incyclum), Nicolas Hawrysh (xp4xbox)
|
||||
* German - (danidoedel), (atmaxinger), (Yepoleb), Daniel Kessel (dkessel), Leon (AllGoodNamesAreTaken), (raidcookie)
|
||||
* Italian - Luca Andrea Rossi (LucaRed), Precious Ugo Abara (48cfu)
|
||||
* Japanese - Aaron van Geffen (AaronVanGeffen), Haruna Chinzei, Nick Hall (nickhall), (jhako), Harry Lam (daihakken)
|
||||
|
|
|
@ -3163,56 +3163,56 @@ STR_5930 :تفاصيل المشهد الكبير
|
|||
STR_5931 :تفاصيل اليافطة
|
||||
STR_5932 :تفاصيل العناصر الفاسدة
|
||||
STR_5933 :الخصائص
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Land ownership: {BLACK}{STRINGID}
|
||||
STR_5934 :Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :Land ownership: {BLACK}{STRINGID}
|
||||
STR_5937 :Not owned and not for sale
|
||||
STR_5938 :{WINDOW_COLOUR_2}Water level: {BLACK}{COMMA16}
|
||||
STR_5938 :Water level: {BLACK}{COMMA16}
|
||||
STR_5939 :Remove park fences
|
||||
STR_5940 :Restore park fences
|
||||
STR_5941 :{WINDOW_COLOUR_2}ارتفاع القاعدة:
|
||||
STR_5942 :{WINDOW_COLOUR_2}أسم المسار: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}الإضافات: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}الإضافات: {BLACK}لا شئ
|
||||
STR_5945 :{WINDOW_COLOUR_2}حواف متصلة:
|
||||
STR_5946 :{WINDOW_COLOUR_2}نوع الرحلة: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}معرف الرحلة: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}أسم الرحلة: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Chain lift
|
||||
STR_5950 :{WINDOW_COLOUR_2}Apply changes to entire track piece
|
||||
STR_5951 :{WINDOW_COLOUR_2}Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sequence number: {BLACK}{COMMA16}
|
||||
STR_5941 :ارتفاع القاعدة:
|
||||
STR_5942 :أسم المسار: {BLACK}{STRINGID}
|
||||
STR_5943 :الإضافات: {BLACK}{STRINGID}
|
||||
STR_5944 :الإضافات: {BLACK}لا شئ
|
||||
STR_5945 :حواف متصلة:
|
||||
STR_5946 :نوع الرحلة: {BLACK}{STRINGID}
|
||||
STR_5947 :معرف الرحلة: {BLACK}{COMMA16}
|
||||
STR_5948 :أسم الرحلة: {BLACK}{STRINGID}
|
||||
STR_5949 :Chain lift
|
||||
STR_5950 :Apply changes to entire track piece
|
||||
STR_5951 :Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sequence number: {BLACK}{COMMA16}
|
||||
STR_5953 :Sort the map elements on the current tile based on their base height.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}وضع حالة رباعي: {BLACK}{STRINGID}
|
||||
STR_5954 :Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :وضع حالة رباعي: {BLACK}{STRINGID}
|
||||
STR_5956 :جنوب غرب
|
||||
STR_5957 :الشمال الغربي
|
||||
STR_5958 :شمالي شرقي
|
||||
STR_5959 :الجنوب الشرقي
|
||||
STR_5960 :{WINDOW_COLOUR_2}وضع حالة رباعي:
|
||||
STR_5961 :{WINDOW_COLOUR_2}فهرس المدخل: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}كشف التصادم:
|
||||
STR_5963 :{WINDOW_COLOUR_2}زوايا مرتفعة:
|
||||
STR_5964 :{WINDOW_COLOUR_2}مائل
|
||||
STR_5965 :{WINDOW_COLOUR_2}نوع المدخل: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}جزء مدخل الحديقة: {BLACK}{STRINGID}
|
||||
STR_5960 :وضع حالة رباعي:
|
||||
STR_5961 :فهرس المدخل: {BLACK}{COMMA16}
|
||||
STR_5962 :كشف التصادم:
|
||||
STR_5963 :زوايا مرتفعة:
|
||||
STR_5964 :مائل
|
||||
STR_5965 :نوع المدخل: {BLACK}{STRINGID}
|
||||
STR_5966 :جزء مدخل الحديقة: {BLACK}{STRINGID}
|
||||
STR_5967 :وسط
|
||||
STR_5968 :شمال
|
||||
STR_5969 :يمين
|
||||
STR_5970 :{WINDOW_COLOUR_2}مُعرف المدخل: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}مُعرف المخرج: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}مُعرف الرحلة: {BLACK}{COMMA16}
|
||||
STR_5970 :مُعرف المدخل: {BLACK}{COMMA16}
|
||||
STR_5971 :مُعرف المخرج: {BLACK}{COMMA16}
|
||||
STR_5972 :مُعرف الرحلة: {BLACK}{COMMA16}
|
||||
STR_5973 :تسلق إلي الأعلي
|
||||
STR_5974 :Changes the base- and clearance height so that it’s at the same as the next element on the current tile. Doing this makes it easier to build on this tile.
|
||||
STR_5975 :إنحدار:
|
||||
STR_5976 :مستوي
|
||||
STR_5977 :الجانب الأيمن الأعلى
|
||||
STR_5978 :الجانب الأيسر لأعلى
|
||||
STR_5979 :{WINDOW_COLOUR_2}نوع الحائط: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}كتابة اليافطة: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}ليست يافطة
|
||||
STR_5982 :{WINDOW_COLOUR_2}نوع المشهد الكبير: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}معرّف قطعة المشاهد الكبيرة: {BLACK}{COMMA16}
|
||||
STR_5979 :نوع الحائط: {BLACK}{COMMA16}
|
||||
STR_5980 :كتابة اليافطة: {BLACK}{STRINGID}
|
||||
STR_5981 :ليست يافطة
|
||||
STR_5982 :نوع المشهد الكبير: {BLACK}{COMMA16}
|
||||
STR_5983 :معرّف قطعة المشاهد الكبيرة: {BLACK}{COMMA16}
|
||||
STR_5984 ::المسارات المقفلة
|
||||
STR_5985 :مجلد جديد
|
||||
STR_5986 :.أدخل الأسم للمجلد الجديد
|
||||
|
@ -3480,7 +3480,7 @@ STR_6273 :الموسيقي
|
|||
STR_6274 :…لا يمكن تحديد مخطط اللون
|
||||
STR_6275 :{WINDOW_COLOUR_2}نمط المحطة
|
||||
STR_6276 :{RED}{STRINGID} .هل علق الزوار؟ ربما يكون هذا بسبب أفعوانية غير صالحة أو وضع تشغيل غير صالح
|
||||
STR_6277 :{WINDOW_COLOUR_2} {BLACK}{STRINGID} :فهرسة المحطة
|
||||
STR_6277 :{BLACK}{STRINGID} :فهرسة المحطة
|
||||
STR_6278 :عدد ملفات الحفظ التلقائي
|
||||
STR_6279 :عدد ملفات الحفظ التلقائي التي يجب إبقائها في المرة الواحدة
|
||||
STR_6280 :الدردشة
|
||||
|
@ -3512,9 +3512,9 @@ STR_6315 :{WINDOW_COLOUR_2}هدف مُحدد المسار: {BLACK}{INT32}, {I
|
|||
STR_6316 :{WINDOW_COLOUR_2}تاريخ مُحدد المسار:
|
||||
STR_6317 :{BLACK}{INT32}، {INT32}، {INT32} مسار {INT32}
|
||||
STR_6318 :{STRING} :ملف السجل {NEWLINE}.تم إكتشاف إنفصال عن الشبكة
|
||||
STR_6319 :{WINDOW_COLOUR_2}مكابح البلوك مغلقة
|
||||
STR_6320 :{WINDOW_COLOUR_2}غير قابل للتدمير
|
||||
STR_6321 :{WINDOW_COLOUR_2}الإضافة متضررة
|
||||
STR_6319 :مكابح البلوك مغلقة
|
||||
STR_6320 :غير قابل للتدمير
|
||||
STR_6321 :الإضافة متضررة
|
||||
STR_6322 :{WINDOW_COLOUR_2} {BLACK}{INT32} :رقم النقش المتحرك
|
||||
STR_6323 :يُحاكي
|
||||
STR_6324 :حاكي
|
||||
|
|
|
@ -3165,56 +3165,56 @@ STR_5930 :Detalls de la decoració gran
|
|||
STR_5931 :Detalls del cartell
|
||||
STR_5932 :Detalls de l'element corrupte
|
||||
STR_5933 :Propietats
|
||||
STR_5934 :{WINDOW_COLOUR_2}Textura del terreny: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Vora del terreny: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Propietari del terreny: {BLACK}{STRINGID}
|
||||
STR_5934 :Textura del terreny: {BLACK}{STRINGID}
|
||||
STR_5935 :Vora del terreny: {BLACK}{STRINGID}
|
||||
STR_5936 :Propietari del terreny: {BLACK}{STRINGID}
|
||||
STR_5937 :Sense propietari ni a la venta
|
||||
STR_5938 :{WINDOW_COLOUR_2}Nivell de l'aigua: {BLACK}{COMMA16}
|
||||
STR_5938 :Nivell de l'aigua: {BLACK}{COMMA16}
|
||||
STR_5939 :Treu les tanques del parc
|
||||
STR_5940 :Restaura les tanques del parc
|
||||
STR_5941 :{WINDOW_COLOUR_2}Alçada base:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Nom del camí: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Afegits: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Afegits: {BLACK}cap
|
||||
STR_5945 :{WINDOW_COLOUR_2}Vores connectades:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Tipus d'atracció: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Id d'atracció: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Nom de l'atracció: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Cadena d'elevació
|
||||
STR_5950 :{WINDOW_COLOUR_2}Aplica els canvis a la via sencera.
|
||||
STR_5951 :{WINDOW_COLOUR_2}Id de secció: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Número de seqüència: {BLACK}{COMMA16}
|
||||
STR_5941 :Alçada base:
|
||||
STR_5942 :Nom del camí: {BLACK}{STRINGID}
|
||||
STR_5943 :Afegits: {BLACK}{STRINGID}
|
||||
STR_5944 :Afegits: {BLACK}cap
|
||||
STR_5945 :Vores connectades:
|
||||
STR_5946 :Tipus d'atracció: {BLACK}{STRINGID}
|
||||
STR_5947 :Id d'atracció: {BLACK}{COMMA16}
|
||||
STR_5948 :Nom de l'atracció: {BLACK}{STRINGID}
|
||||
STR_5949 :Cadena d'elevació
|
||||
STR_5950 :Aplica els canvis a la via sencera.
|
||||
STR_5951 :Id de secció: {BLACK}{COMMA16}
|
||||
STR_5952 :Número de seqüència: {BLACK}{COMMA16}
|
||||
STR_5953 :Ordena els elements del mapa de la casella seleccionada segons la seva alçada base.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Edat de la decoració: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Posició al quadrant: {BLACK}{STRINGID}
|
||||
STR_5954 :Edat de la decoració: {BLACK}{COMMA16}
|
||||
STR_5955 :Posició al quadrant: {BLACK}{STRINGID}
|
||||
STR_5956 :Sud-oest
|
||||
STR_5957 :Nord-oest
|
||||
STR_5958 :Nord-est
|
||||
STR_5959 :Sud-est
|
||||
STR_5960 :{WINDOW_COLOUR_2}Posició al quadrant:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Índex d'entrada: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Detecció de col·lisions:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Cantonades aixecades:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Tipus d'entrada: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Part de l'entrada al parc: {BLACK}{STRINGID}
|
||||
STR_5960 :Posició al quadrant:
|
||||
STR_5961 :Índex d'entrada: {BLACK}{COMMA16}
|
||||
STR_5962 :Detecció de col·lisions:
|
||||
STR_5963 :Cantonades aixecades:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Tipus d'entrada: {BLACK}{STRINGID}
|
||||
STR_5966 :Part de l'entrada al parc: {BLACK}{STRINGID}
|
||||
STR_5967 :Mig
|
||||
STR_5968 :Esquerra
|
||||
STR_5969 :Dreta
|
||||
STR_5970 :{WINDOW_COLOUR_2}Id d'entrada: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Id de sortida: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Id d'atracció: {BLACK}{COMMA16}
|
||||
STR_5970 :Id d'entrada: {BLACK}{COMMA16}
|
||||
STR_5971 :Id de sortida: {BLACK}{COMMA16}
|
||||
STR_5972 :Id d'atracció: {BLACK}{COMMA16}
|
||||
STR_5973 :Subjecta al següent
|
||||
STR_5974 :Canvia la base i els límits de funcionament de manera que siguin els mateixos que el proper element d'aquesta casella. Això fa que sigui més fàcil construir en aquesta casella.
|
||||
STR_5975 :Inclinació:
|
||||
STR_5976 :plana
|
||||
STR_5977 :costat dret a dalt
|
||||
STR_5978 :costat esquerre a dalt
|
||||
STR_5979 :{WINDOW_COLOUR_2}Tipus de tanca: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Text del cartell: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}No és un cartell
|
||||
STR_5982 :{WINDOW_COLOUR_2}Tipus de decoració gran: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Id de peça d'escenari gran: {BLACK}{COMMA16}
|
||||
STR_5979 :Tipus de tanca: {BLACK}{COMMA16}
|
||||
STR_5980 :Text del cartell: {BLACK}{STRINGID}
|
||||
STR_5981 :No és un cartell
|
||||
STR_5982 :Tipus de decoració gran: {BLACK}{COMMA16}
|
||||
STR_5983 :Id de peça d'escenari gran: {BLACK}{COMMA16}
|
||||
STR_5984 :Camins blocats:
|
||||
STR_5985 :Nova carpeta
|
||||
STR_5986 :Escriviu el nom de la carpeta nova
|
||||
|
@ -3486,7 +3486,7 @@ STR_6273 :Música
|
|||
STR_6274 :No es poden establir els colors…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Estil d'estació:
|
||||
STR_6276 :{RED}Hi ha visitants bloquejats en {STRINGID}, probablement a causa d'un tipus d'atracció no vàlid o un mode d'operació incorrecte.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Índex d'estació: {BLACK}{STRINGID}
|
||||
STR_6277 :Índex d'estació: {BLACK}{STRINGID}
|
||||
STR_6278 :Nombre de desades automàtiques:
|
||||
STR_6279 :Nombre de desades automàtiques que es mantindran.
|
||||
STR_6280 :Xat
|
||||
|
@ -3519,9 +3519,9 @@ STR_6315 :{WINDOW_COLOUR_2}Objectiu de l'encaminador: {BLACK}{INT32}, {INT32}
|
|||
STR_6316 :{WINDOW_COLOUR_2}Historial de l'encaminador:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :S'ha detectat una dessincronització amb la xarxa.{NEWLINE}Fitxer de registre: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Frens de bloc tancats
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indestructible
|
||||
STR_6321 :{WINDOW_COLOUR_2}L'adició està trencada
|
||||
STR_6319 :Frens de bloc tancats
|
||||
STR_6320 :Indestructible
|
||||
STR_6321 :L'adició està trencada
|
||||
STR_6322 :{WINDOW_COLOUR_2}ID de l'sprite: {BLACK}{INT32}
|
||||
STR_6323 :S'està simulant
|
||||
STR_6324 :Simula
|
||||
|
@ -3567,7 +3567,7 @@ STR_6363 :S'ha copiat el text al porta-retalls.
|
|||
STR_6364 :{RED}{COMMA16} persona ha mort en l'accident de {STRINGID}
|
||||
STR_6365 :Morts en atraccions
|
||||
STR_6366 :Vehicles parats o avariats
|
||||
STR_6367 :{WINDOW_COLOUR_2}Fotograma:
|
||||
STR_6367 :Fotograma:
|
||||
STR_6368 :Per motius de compatibilitat, no es recomana executar l'OpenRCT2 amb el Wine. L'OpenRCT2 té versions natives per a macOS, Linux, FreeBSD i OpenBSD.
|
||||
STR_6369 :Permet la construcció de vies a alçades no vàlides
|
||||
STR_6370 :Permet posar trossos de via en qualsevol alçada.
|
||||
|
|
|
@ -3161,56 +3161,56 @@ STR_5930 :Detaily velkých kulis
|
|||
STR_5931 :Detaily banneru
|
||||
STR_5932 :Detaily poškozených elementů
|
||||
STR_5933 :Vlastnosti
|
||||
STR_5934 :{WINDOW_COLOUR_2}Textura terénu: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Hrana terénu: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Pozemková práva: {BLACK}{STRINGID}
|
||||
STR_5934 :Textura terénu: {BLACK}{STRINGID}
|
||||
STR_5935 :Hrana terénu: {BLACK}{STRINGID}
|
||||
STR_5936 :Pozemková práva: {BLACK}{STRINGID}
|
||||
STR_5937 :Není vlastněno a není na prodej
|
||||
STR_5938 :{WINDOW_COLOUR_2}Úroveň vody: {BLACK}{COMMA16}
|
||||
STR_5938 :Úroveň vody: {BLACK}{COMMA16}
|
||||
STR_5939 :Odebrat plot parku
|
||||
STR_5940 :Obnovit plot parku
|
||||
STR_5941 :{WINDOW_COLOUR_2}Základní výška:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Jméno cesty: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Dodatky: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Dodatky: {BLACK}None
|
||||
STR_5945 :{WINDOW_COLOUR_2}Připojené hrany:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Typ atrakce: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}ID atrakce: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Název atrakce: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Řetězový výtah
|
||||
STR_5950 :{WINDOW_COLOUR_2}Aplikovat změny pro celou část traťi
|
||||
STR_5951 :{WINDOW_COLOUR_2}ID části traťi: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Číslo sekvence: {BLACK}{COMMA16}
|
||||
STR_5941 :Základní výška:
|
||||
STR_5942 :Jméno cesty: {BLACK}{STRINGID}
|
||||
STR_5943 :Dodatky: {BLACK}{STRINGID}
|
||||
STR_5944 :Dodatky: {BLACK}None
|
||||
STR_5945 :Připojené hrany:
|
||||
STR_5946 :Typ atrakce: {BLACK}{STRINGID}
|
||||
STR_5947 :ID atrakce: {BLACK}{COMMA16}
|
||||
STR_5948 :Název atrakce: {BLACK}{STRINGID}
|
||||
STR_5949 :Řetězový výtah
|
||||
STR_5950 :Aplikovat změny pro celou část traťi
|
||||
STR_5951 :ID části traťi: {BLACK}{COMMA16}
|
||||
STR_5952 :Číslo sekvence: {BLACK}{COMMA16}
|
||||
STR_5953 :Seřadit elementy mapy vybrané dlaždice podle jejich základní výšky
|
||||
STR_5954 :{WINDOW_COLOUR_2}Stáří kulis: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Kvadrant umístění: {BLACK}{STRINGID}
|
||||
STR_5954 :Stáří kulis: {BLACK}{COMMA16}
|
||||
STR_5955 :Kvadrant umístění: {BLACK}{STRINGID}
|
||||
STR_5956 :Jihozápad
|
||||
STR_5957 :Severozápad
|
||||
STR_5958 :Severovýchod
|
||||
STR_5959 :Jihovýchod
|
||||
STR_5960 :{WINDOW_COLOUR_2}Kvadrant umístění:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Index vstupu: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Detekce kolizí:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Zdvihnuté rohy:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonální
|
||||
STR_5965 :{WINDOW_COLOUR_2}Typ vstupu: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Část vstupu do parku: {BLACK}{STRINGID}
|
||||
STR_5960 :Kvadrant umístění:
|
||||
STR_5961 :Index vstupu: {BLACK}{COMMA16}
|
||||
STR_5962 :Detekce kolizí:
|
||||
STR_5963 :Zdvihnuté rohy:
|
||||
STR_5964 :Diagonální
|
||||
STR_5965 :Typ vstupu: {BLACK}{STRINGID}
|
||||
STR_5966 :Část vstupu do parku: {BLACK}{STRINGID}
|
||||
STR_5967 :Prostředek
|
||||
STR_5968 :Levý
|
||||
STR_5969 :Pravý
|
||||
STR_5970 :{WINDOW_COLOUR_2}ID vstupu: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}ID východu: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}ID atrakce: {BLACK}{COMMA16}
|
||||
STR_5970 :ID vstupu: {BLACK}{COMMA16}
|
||||
STR_5971 :ID východu: {BLACK}{COMMA16}
|
||||
STR_5972 :ID atrakce: {BLACK}{COMMA16}
|
||||
STR_5973 :Omezit dalším
|
||||
STR_5974 :Nastaví základní a celkovou výšku stejnou, jako je výška dalšího elementu na stejné dlaždici. To usnadní stavění na této dlaždici.
|
||||
STR_5975 :Sklon:
|
||||
STR_5976 :Rovina
|
||||
STR_5977 :Pravá strana
|
||||
STR_5978 :Levá strana
|
||||
STR_5979 :{WINDOW_COLOUR_2}Typ plotu: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Text banneru: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}To není banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Typ velké kulisy: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}ID velké kulisy: {BLACK}{COMMA16}
|
||||
STR_5979 :Typ plotu: {BLACK}{COMMA16}
|
||||
STR_5980 :Text banneru: {BLACK}{STRINGID}
|
||||
STR_5981 :To není banner
|
||||
STR_5982 :Typ velké kulisy: {BLACK}{COMMA16}
|
||||
STR_5983 :ID velké kulisy: {BLACK}{COMMA16}
|
||||
STR_5984 :Zablokované cesty:
|
||||
STR_5985 :Nová složka
|
||||
STR_5986 :Napiště název nové složky
|
||||
|
@ -3482,7 +3482,7 @@ STR_6273 :Hudba
|
|||
STR_6274 :Nelze nastavit schéma barev…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Styl stanice:
|
||||
STR_6276 :{RED}Na atrakci {STRINGID} se zasekávají návštěvníci, zkontrolujte typ atrakce a mód provozu.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Index stanice: {BLACK}{STRINGID}
|
||||
STR_6277 :Index stanice: {BLACK}{STRINGID}
|
||||
STR_6278 :Počet autouložení
|
||||
STR_6279 :Maximální počet autouložených her
|
||||
STR_6280 :Chat
|
||||
|
@ -3515,9 +3515,9 @@ STR_6315 :{WINDOW_COLOUR_2}Cíl hledání cesty: {BLACK}{INT32}, {INT32}, {IN
|
|||
STR_6316 :{WINDOW_COLOUR_2}Historie hledání cest:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} směr {INT32}
|
||||
STR_6318 :Detekována síťová desynchronizace.{NEWLINE}Log: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Uzavřený brzdný blok
|
||||
STR_6320 :{WINDOW_COLOUR_2}Nezničitelné
|
||||
STR_6321 :{WINDOW_COLOUR_2}Rozbitá část
|
||||
STR_6319 :Uzavřený brzdný blok
|
||||
STR_6320 :Nezničitelné
|
||||
STR_6321 :Rozbitá část
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite Id: {BLACK}{INT32}
|
||||
STR_6323 :Probíhá simulace
|
||||
STR_6324 :Simulovat
|
||||
|
@ -3563,7 +3563,7 @@ STR_6363 :Text zkopírován do schránky
|
|||
STR_6364 :{RED}{COMMA16} zemřel(a) při nehodě na {STRINGID}
|
||||
STR_6365 :Oběti atrakce
|
||||
STR_6366 :Zaseklá vozidla
|
||||
STR_6367 :{WINDOW_COLOUR_2}Snímek animace:
|
||||
STR_6367 :Snímek animace:
|
||||
STR_6368 :Z důvodů kompatibility není doporučeno spuštět OpenRCT2 pod Wine. OpenRCT2 má nativví podporu pro macOS, Linux, FreeBSD a OpenBSD.
|
||||
STR_6369 :Povolit stavbu trati v jakémkoliv výšce
|
||||
STR_6370 :Umožní stavět dráhu v neplatné výšce
|
||||
|
|
|
@ -3162,56 +3162,56 @@ STR_5930 :Stort sceneri detaljer
|
|||
STR_5931 :Banner detaljer
|
||||
STR_5932 :Fejl element detaljer
|
||||
STR_5933 :Egenskaber
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terræn tekstur: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terræn kant: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Ejendomsret til jord: {BLACK}{STRINGID}
|
||||
STR_5934 :Terræn tekstur: {BLACK}{STRINGID}
|
||||
STR_5935 :Terræn kant: {BLACK}{STRINGID}
|
||||
STR_5936 :Ejendomsret til jord: {BLACK}{STRINGID}
|
||||
STR_5937 :Ikke ejet, og ikke til salg
|
||||
STR_5938 :{WINDOW_COLOUR_2}Vandniveau: {BLACK}{COMMA16}
|
||||
STR_5938 :Vandniveau: {BLACK}{COMMA16}
|
||||
STR_5939 :Fjern park hegn
|
||||
STR_5940 :Gendan park hegn
|
||||
STR_5941 :{WINDOW_COLOUR_2}Basis højde:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Sti navn: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Tilføjelser: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Tilføjelser: {BLACK}Ingen
|
||||
STR_5945 :{WINDOW_COLOUR_2}Forbundende kanter:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Forlystelses type: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Forlystelses ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Forlystelses navn: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Kæde hejs
|
||||
STR_5950 :{WINDOW_COLOUR_2}Anvend på hele sporstykket
|
||||
STR_5951 :{WINDOW_COLOUR_2}Sporstykke ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sekvens nummer: {BLACK}{COMMA16}
|
||||
STR_5941 :Basis højde:
|
||||
STR_5942 :Sti navn: {BLACK}{STRINGID}
|
||||
STR_5943 :Tilføjelser: {BLACK}{STRINGID}
|
||||
STR_5944 :Tilføjelser: {BLACK}Ingen
|
||||
STR_5945 :Forbundende kanter:
|
||||
STR_5946 :Forlystelses type: {BLACK}{STRINGID}
|
||||
STR_5947 :Forlystelses ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Forlystelses navn: {BLACK}{STRINGID}
|
||||
STR_5949 :Kæde hejs
|
||||
STR_5950 :Anvend på hele sporstykket
|
||||
STR_5951 :Sporstykke ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sekvens nummer: {BLACK}{COMMA16}
|
||||
STR_5953 :Sorter kortelementerne på det aktuelle felt baseret på deres basishøjde.
|
||||
STR_5954 :{WINDOW_COLOUR_2}alder på sceneri: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Kvadrant placering: {BLACK}{STRINGID}
|
||||
STR_5954 :alder på sceneri: {BLACK}{COMMA16}
|
||||
STR_5955 :Kvadrant placering: {BLACK}{STRINGID}
|
||||
STR_5956 :Sydvest
|
||||
STR_5957 :Nordvest
|
||||
STR_5958 :Nordøst
|
||||
STR_5959 :Sydøst
|
||||
STR_5960 :{WINDOW_COLOUR_2}Kvadrant placering:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Indgangsindeks: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Kollisionsdetektering:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Forhøjede hjørner:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Indgangs type: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Park indgangs part: {BLACK}{STRINGID}
|
||||
STR_5960 :Kvadrant placering:
|
||||
STR_5961 :Indgangsindeks: {BLACK}{COMMA16}
|
||||
STR_5962 :Kollisionsdetektering:
|
||||
STR_5963 :Forhøjede hjørner:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Indgangs type: {BLACK}{STRINGID}
|
||||
STR_5966 :Park indgangs part: {BLACK}{STRINGID}
|
||||
STR_5967 :Midten
|
||||
STR_5968 :Venstre
|
||||
STR_5969 :Højre
|
||||
STR_5970 :{WINDOW_COLOUR_2}Indgangs ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Udgangs ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Forlystelses ID: {BLACK}{COMMA16}
|
||||
STR_5970 :Indgangs ID: {BLACK}{COMMA16}
|
||||
STR_5971 :Udgangs ID: {BLACK}{COMMA16}
|
||||
STR_5972 :Forlystelses ID: {BLACK}{COMMA16}
|
||||
STR_5973 :Fastlås til næste
|
||||
STR_5974 :Ændrer basis- og frigangshøjden, så den er på samme som det næste element på den aktuelle felt. Dette gør det nemmere at bygge videre på dette felt.
|
||||
STR_5975 :Bakke:
|
||||
STR_5976 :Flad
|
||||
STR_5977 :Højre side op
|
||||
STR_5978 :Venstre side op
|
||||
STR_5979 :{WINDOW_COLOUR_2}Væg type: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Banner tekst: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Ikke et banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Stort sceneri type: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Stort sceneri enhed ID: {BLACK}{COMMA16}
|
||||
STR_5979 :Væg type: {BLACK}{COMMA16}
|
||||
STR_5980 :Banner tekst: {BLACK}{STRINGID}
|
||||
STR_5981 :Ikke et banner
|
||||
STR_5982 :Stort sceneri type: {BLACK}{COMMA16}
|
||||
STR_5983 :Stort sceneri enhed ID: {BLACK}{COMMA16}
|
||||
STR_5984 :Blokerede stier:
|
||||
STR_5985 :Ny mappe
|
||||
STR_5986 :Angiv navnet på den nye mappe.
|
||||
|
@ -3483,7 +3483,7 @@ STR_6273 :Musik
|
|||
STR_6274 :Kan ikke sætte farveskema…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Stations stil:
|
||||
STR_6276 :{RED}{STRINGID} har fastklemte gæster, muligvis på grund af forkert forlystelsetype eller operations tilstand.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Stations index: {BLACK}{STRINGID}
|
||||
STR_6277 :Stations index: {BLACK}{STRINGID}
|
||||
STR_6278 :Autogem mængde
|
||||
STR_6279 :Antallet af automatisk gemte spil der skal beholdes
|
||||
STR_6280 :Chat
|
||||
|
@ -3516,9 +3516,9 @@ STR_6315 :{WINDOW_COLOUR_2}Stisøger Goal: {BLACK}{INT32}, {INT32}, {INT32} r
|
|||
STR_6316 :{WINDOW_COLOUR_2}Stisøger historie:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} ret {INT32}
|
||||
STR_6318 :Netværks synkroniseringsfejl.{NEWLINE}Log fil: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Blok Bremse tilkoblet
|
||||
STR_6320 :{WINDOW_COLOUR_2}Uforgængelig
|
||||
STR_6321 :{WINDOW_COLOUR_2}Tilføjelse defekt
|
||||
STR_6319 :Blok Bremse tilkoblet
|
||||
STR_6320 :Uforgængelig
|
||||
STR_6321 :Tilføjelse defekt
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite Id: {BLACK}{INT32}
|
||||
STR_6323 :Simulérer
|
||||
STR_6324 :Simulér
|
||||
|
@ -3564,7 +3564,7 @@ STR_6363 :Kopierede tekst til udklipsholder
|
|||
STR_6364 :{RED}{COMMA16} person døde i forlystelsen {STRINGID}
|
||||
STR_6365 :Forlystelse tilskadekommende
|
||||
STR_6366 :Fastlåste eller blokerede køretøjer
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animations billede:
|
||||
STR_6367 :Animations billede:
|
||||
STR_6368 :Af kompatibilitetshensyn anbefales det ikke at køre OpenRCT2 med Wine. OpenRCT2 har indbygget understøttelse af macOS, Linux, FreeBSD og OpenBSD.
|
||||
STR_6369 :Tillad bygning af spor i ugyldige højder
|
||||
STR_6370 :Gør det muligt at placere sporstykker i ethvert højdeniveau
|
||||
|
|
|
@ -3159,56 +3159,56 @@ STR_5930 :Details große Szenerie
|
|||
STR_5931 :Bannerdetails
|
||||
STR_5932 :Details fehlerhaftes Element
|
||||
STR_5933 :Eigenschaften
|
||||
STR_5934 :{WINDOW_COLOUR_2}Geländetextur: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Geländekante: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Landbesitz: {BLACK}{STRINGID}
|
||||
STR_5934 :Geländetextur: {BLACK}{STRINGID}
|
||||
STR_5935 :Geländekante: {BLACK}{STRINGID}
|
||||
STR_5936 :Landbesitz: {BLACK}{STRINGID}
|
||||
STR_5937 :Nicht in Besitz und nicht zum Verkauf
|
||||
STR_5938 :{WINDOW_COLOUR_2}Wasserhöhe: {BLACK}{COMMA16}
|
||||
STR_5938 :Wasserhöhe: {BLACK}{COMMA16}
|
||||
STR_5939 :Parkzäune entfernen
|
||||
STR_5940 :Parkzäune wiederherst.
|
||||
STR_5941 :{WINDOW_COLOUR_2}Basishöhe:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Wegname: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Zusätze: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Zusätze: {BLACK}Keine
|
||||
STR_5945 :{WINDOW_COLOUR_2}Verbundene Kanten:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Attraktionstyp: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Attraktions-ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Attraktionsname: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Kettenlift
|
||||
STR_5950 :{WINDOW_COLOUR_2}Änderungen auf gesamtes Streckenstück anwenden
|
||||
STR_5951 :{WINDOW_COLOUR_2}Streckenstück-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Reihennummer: {BLACK}{COMMA16}
|
||||
STR_5941 :Basishöhe:
|
||||
STR_5942 :Wegname: {BLACK}{STRINGID}
|
||||
STR_5943 :Zusätze: {BLACK}{STRINGID}
|
||||
STR_5944 :Zusätze: {BLACK}Keine
|
||||
STR_5945 :Verbundene Kanten:
|
||||
STR_5946 :Attraktionstyp: {BLACK}{STRINGID}
|
||||
STR_5947 :Attraktions-ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Attraktionsname: {BLACK}{STRINGID}
|
||||
STR_5949 :Kettenlift
|
||||
STR_5950 :Änderungen auf gesamtes Streckenstück anwenden
|
||||
STR_5951 :Streckenstück-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Reihennummer: {BLACK}{COMMA16}
|
||||
STR_5953 :Kartenelemente auf aktueller Kachel{NEWLINE}nach ihrer Basishöhe sortieren
|
||||
STR_5954 :{WINDOW_COLOUR_2}Szeneriealter: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Quadrantplatzierung: {BLACK}{STRINGID}
|
||||
STR_5954 :Szeneriealter: {BLACK}{COMMA16}
|
||||
STR_5955 :Quadrantplatzierung: {BLACK}{STRINGID}
|
||||
STR_5956 :Südwest
|
||||
STR_5957 :Nordwest
|
||||
STR_5958 :Nordost
|
||||
STR_5959 :Südost
|
||||
STR_5960 :{WINDOW_COLOUR_2}Quadrantplatzierung:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Eintragsindex: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Kollisionserkennung:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Angehobene Ecken:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Eingangstyp: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parkeingangsteil: {BLACK}{STRINGID}
|
||||
STR_5960 :Quadrantplatzierung:
|
||||
STR_5961 :Eintragsindex: {BLACK}{COMMA16}
|
||||
STR_5962 :Kollisionserkennung:
|
||||
STR_5963 :Angehobene Ecken:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Eingangstyp: {BLACK}{STRINGID}
|
||||
STR_5966 :Parkeingangsteil: {BLACK}{STRINGID}
|
||||
STR_5967 :Mitte
|
||||
STR_5968 :Links
|
||||
STR_5969 :Rechts
|
||||
STR_5970 :{WINDOW_COLOUR_2}Eingangs-ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Ausgangs-ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Attraktions-ID: {BLACK}{COMMA16}
|
||||
STR_5970 :Eingangs-ID: {BLACK}{COMMA16}
|
||||
STR_5971 :Ausgangs-ID: {BLACK}{COMMA16}
|
||||
STR_5972 :Attraktions-ID: {BLACK}{COMMA16}
|
||||
STR_5973 :An nächsten heften
|
||||
STR_5974 :Ändert die Basis- und lichte Höhe, sodass{NEWLINE}sie der des nächsten Elements auf der aktuellen Kachel entspricht
|
||||
STR_5975 :Steigung:
|
||||
STR_5976 :Flach
|
||||
STR_5977 :Rechte Seite hoch
|
||||
STR_5978 :Linke Seite hoch
|
||||
STR_5979 :{WINDOW_COLOUR_2}Zauntyp: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Bannertext: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Kein Banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Großer Szenerietyp: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Großes Szeneriestück-ID: {BLACK}{COMMA16}
|
||||
STR_5979 :Zauntyp: {BLACK}{COMMA16}
|
||||
STR_5980 :Bannertext: {BLACK}{STRINGID}
|
||||
STR_5981 :Kein Banner
|
||||
STR_5982 :Großer Szenerietyp: {BLACK}{COMMA16}
|
||||
STR_5983 :Großes Szeneriestück-ID: {BLACK}{COMMA16}
|
||||
STR_5984 :Blockierte Wege:
|
||||
STR_5985 :Neuer Ordner
|
||||
STR_5986 :Name des neuen Ordners eingeben:
|
||||
|
@ -3480,7 +3480,7 @@ STR_6273 :Musik
|
|||
STR_6274 :Farbschema kann nicht gesetzt werden…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Stil der Station:
|
||||
STR_6276 :{RED}{STRINGID} hat steckengebliebene Gäste, möglicherweise aufgrund eines ungültigen Streckentyps oder Betriebsmodus.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Stationsindex: {BLACK}{STRINGID}
|
||||
STR_6277 :Stationsindex: {BLACK}{STRINGID}
|
||||
STR_6278 :Autosaveanzahl:
|
||||
STR_6279 :Anzahl der Autosaves, die{NEWLINE}behalten werden sollen
|
||||
STR_6280 :Chat
|
||||
|
@ -3513,9 +3513,9 @@ STR_6315 :{WINDOW_COLOUR_2}Wegfindungsziel: {BLACK}{INT32}, {INT32}, {INT32}
|
|||
STR_6316 :{WINDOW_COLOUR_2}Wegfindungshistorie:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} Richtung {INT32}
|
||||
STR_6318 :Netzwerkdesynchronisation erkannt.{NEWLINE}Logdatei: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Blockbremse geschlossen
|
||||
STR_6320 :{WINDOW_COLOUR_2}Unzerstörbar
|
||||
STR_6321 :{WINDOW_COLOUR_2}Zusatz ist kaputt
|
||||
STR_6319 :Blockbremse geschlossen
|
||||
STR_6320 :Unzerstörbar
|
||||
STR_6321 :Zusatz ist kaputt
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite-ID: {BLACK}{INT32}
|
||||
STR_6323 :Simulierend
|
||||
STR_6324 :Simulieren
|
||||
|
@ -3561,7 +3561,7 @@ STR_6363 :Text in die Zwischenablage kopiert
|
|||
STR_6364 :{RED}{COMMA16} Person starb bei einem Unfall auf {STRINGID}
|
||||
STR_6365 :Opfer von Fahrgeschäften
|
||||
STR_6366 :Feststeckende Fahrzeuge
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animations-Frame:
|
||||
STR_6367 :Animations-Frame:
|
||||
STR_6368 :Aus Kompabilitätsgründen wird es nicht empfohlen, OpenRCT2 mit Wine auszuführen. OpenRCT2 funktioniert auf macOS, Linux, FreeBSD und OpenBSD.
|
||||
STR_6369 :Streckenbau an ungültigen Höhen erlauben
|
||||
STR_6370 :Erlaubt Platzierung von Streckenteilen an beliebigen Höhenintervallen
|
||||
|
|
|
@ -3162,56 +3162,56 @@ STR_5930 :Large scenery details
|
|||
STR_5931 :Banner details
|
||||
STR_5932 :Corrupt element details
|
||||
STR_5933 :Properties
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Land ownership: {BLACK}{STRINGID}
|
||||
STR_5934 :Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :Land ownership: {BLACK}{STRINGID}
|
||||
STR_5937 :Not owned and not for sale
|
||||
STR_5938 :{WINDOW_COLOUR_2}Water level: {BLACK}{COMMA16}
|
||||
STR_5938 :Water level: {BLACK}{COMMA16}
|
||||
STR_5939 :Remove park fences
|
||||
STR_5940 :Restore park fences
|
||||
STR_5941 :{WINDOW_COLOUR_2}Base height:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Path name: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Additions: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Additions: {BLACK}None
|
||||
STR_5945 :{WINDOW_COLOUR_2}Connected edges:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Ride type: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Ride ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Ride name: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Chain lift
|
||||
STR_5950 :{WINDOW_COLOUR_2}Apply changes to entire track piece
|
||||
STR_5951 :{WINDOW_COLOUR_2}Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sequence number: {BLACK}{COMMA16}
|
||||
STR_5941 :Base height:
|
||||
STR_5942 :Path name: {BLACK}{STRINGID}
|
||||
STR_5943 :Additions: {BLACK}{STRINGID}
|
||||
STR_5944 :Additions: {BLACK}None
|
||||
STR_5945 :Connected edges:
|
||||
STR_5946 :Ride type: {BLACK}{STRINGID}
|
||||
STR_5947 :Ride ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Ride name: {BLACK}{STRINGID}
|
||||
STR_5949 :Chain lift
|
||||
STR_5950 :Apply changes to entire track piece
|
||||
STR_5951 :Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sequence number: {BLACK}{COMMA16}
|
||||
STR_5953 :Sort the map elements on the current tile based on their base height.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Quadrant placement: {BLACK}{STRINGID}
|
||||
STR_5954 :Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :Quadrant placement: {BLACK}{STRINGID}
|
||||
STR_5956 :Southwest
|
||||
STR_5957 :Northwest
|
||||
STR_5958 :Northeast
|
||||
STR_5959 :Southeast
|
||||
STR_5960 :{WINDOW_COLOUR_2}Quadrant placement:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Entry index: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Collision detection:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Raised Corners:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Entrance type: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Park entrance part: {BLACK}{STRINGID}
|
||||
STR_5960 :Quadrant placement:
|
||||
STR_5961 :Entry index: {BLACK}{COMMA16}
|
||||
STR_5962 :Collision detection:
|
||||
STR_5963 :Raised Corners:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Entrance type: {BLACK}{STRINGID}
|
||||
STR_5966 :Park entrance part: {BLACK}{STRINGID}
|
||||
STR_5967 :Middle
|
||||
STR_5968 :Left
|
||||
STR_5969 :Right
|
||||
STR_5970 :{WINDOW_COLOUR_2}Entrance ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Exit ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Ride ID: {BLACK}{COMMA16}
|
||||
STR_5970 :Entrance ID: {BLACK}{COMMA16}
|
||||
STR_5971 :Exit ID: {BLACK}{COMMA16}
|
||||
STR_5972 :Ride ID: {BLACK}{COMMA16}
|
||||
STR_5973 :Clamp to next
|
||||
STR_5974 :Changes the base- and clearance height so that it’s at the same as the next element on the current tile. Doing this makes it easier to build on this tile.
|
||||
STR_5975 :Slope:
|
||||
STR_5976 :Flat
|
||||
STR_5977 :Right side up
|
||||
STR_5978 :Left side up
|
||||
STR_5979 :{WINDOW_COLOUR_2}Wall type: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Banner text: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Not a banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Large scenery type: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Large scenery piece ID: {BLACK}{COMMA16}
|
||||
STR_5979 :Wall type: {BLACK}{COMMA16}
|
||||
STR_5980 :Banner text: {BLACK}{STRINGID}
|
||||
STR_5981 :Not a banner
|
||||
STR_5982 :Large scenery type: {BLACK}{COMMA16}
|
||||
STR_5983 :Large scenery piece ID: {BLACK}{COMMA16}
|
||||
STR_5984 :Blocked paths:
|
||||
STR_5985 :New folder
|
||||
STR_5986 :Type the name of the new folder.
|
||||
|
@ -3483,7 +3483,7 @@ STR_6273 :Music
|
|||
STR_6274 :Can’t set colour scheme…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Station style:
|
||||
STR_6276 :{RED}{STRINGID} has guests getting stuck, possibly due to invalid ride type or operating mode.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Station index: {BLACK}{STRINGID}
|
||||
STR_6277 :Station index: {BLACK}{STRINGID}
|
||||
STR_6278 :Autosave amount
|
||||
STR_6279 :Number of autosaves that should be kept
|
||||
STR_6280 :Chat
|
||||
|
@ -3516,9 +3516,9 @@ STR_6315 :{WINDOW_COLOUR_2}Pathfind Goal: {BLACK}{INT32}, {INT32}, {INT32} di
|
|||
STR_6316 :{WINDOW_COLOUR_2}Pathfind history:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :Network desync detected.{NEWLINE}Log file: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Block Brake Closed
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indestructible
|
||||
STR_6321 :{WINDOW_COLOUR_2}Addition is broken
|
||||
STR_6319 :Block Brake Closed
|
||||
STR_6320 :Indestructible
|
||||
STR_6321 :Addition is broken
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite Id: {BLACK}{INT32}
|
||||
STR_6323 :Simulating
|
||||
STR_6324 :Simulate
|
||||
|
@ -3564,7 +3564,7 @@ STR_6363 :Copied text to clipboard
|
|||
STR_6364 :{RED}{COMMA16} person has died in an accident on {STRINGID}
|
||||
STR_6365 :Ride casualties
|
||||
STR_6366 :Stuck or stalled vehicles
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animation frame:
|
||||
STR_6367 :Animation frame:
|
||||
STR_6368 :For compatibility reasons, it is not recommended to run OpenRCT2 with Wine. OpenRCT2 has native support for macOS, Linux, FreeBSD and OpenBSD.
|
||||
STR_6369 :Allow building track at invalid heights
|
||||
STR_6370 :Allows placing track pieces at any height interval
|
||||
|
@ -3656,6 +3656,8 @@ STR_6455 :Can’t rename sign…
|
|||
STR_6456 :Giant Screenshot
|
||||
STR_6457 :Report a bug on GitHub
|
||||
STR_6458 :Follow this on Main View
|
||||
STR_6460 :D
|
||||
STR_6461 :Direction
|
||||
|
||||
#############
|
||||
# Scenarios #
|
||||
|
|
|
@ -3162,56 +3162,56 @@ STR_5930 :Detaloj de granda pejzaĵo
|
|||
STR_5931 :Detaloj de rubando
|
||||
STR_5932 :Detaloj de difektita elemento
|
||||
STR_5933 :Ecoj
|
||||
STR_5934 :{WINDOW_COLOUR_2}Teksturo de tereno: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Flanko de tereno: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Proprieto de bieno: {BLACK}{STRINGID}
|
||||
STR_5934 :Teksturo de tereno: {BLACK}{STRINGID}
|
||||
STR_5935 :Flanko de tereno: {BLACK}{STRINGID}
|
||||
STR_5936 :Proprieto de bieno: {BLACK}{STRINGID}
|
||||
STR_5937 :Ne estas posedata kaj ne aĉetebla
|
||||
STR_5938 :{WINDOW_COLOUR_2}Akvonivelo: {BLACK}{COMMA16}
|
||||
STR_5938 :Akvonivelo: {BLACK}{COMMA16}
|
||||
STR_5939 :Forigi parkobarilojn
|
||||
STR_5940 :Restaŭri parkobarilojn
|
||||
STR_5941 :{WINDOW_COLOUR_2}Baza alteco:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Dosierindiko: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Adicioj: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Adicioj: {BLACK}Neniu
|
||||
STR_5945 :{WINDOW_COLOUR_2}Kunligitaj randoj:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Tipo de atrakcio: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Identigilo de atrakcio: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Nomo de atrakcio: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Ĉenlifto
|
||||
STR_5950 :{WINDOW_COLOUR_2}Apliki ŝanĝojn al tuta trakoparto
|
||||
STR_5951 :{WINDOW_COLOUR_2}Identigilo de trakoparto: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sinsekvonumero: {BLACK}{COMMA16}
|
||||
STR_5941 :Baza alteco:
|
||||
STR_5942 :Dosierindiko: {BLACK}{STRINGID}
|
||||
STR_5943 :Adicioj: {BLACK}{STRINGID}
|
||||
STR_5944 :Adicioj: {BLACK}Neniu
|
||||
STR_5945 :Kunligitaj randoj:
|
||||
STR_5946 :Tipo de atrakcio: {BLACK}{STRINGID}
|
||||
STR_5947 :Identigilo de atrakcio: {BLACK}{COMMA16}
|
||||
STR_5948 :Nomo de atrakcio: {BLACK}{STRINGID}
|
||||
STR_5949 :Ĉenlifto
|
||||
STR_5950 :Apliki ŝanĝojn al tuta trakoparto
|
||||
STR_5951 :Identigilo de trakoparto: {BLACK}{COMMA16}
|
||||
STR_5952 :Sinsekvonumero: {BLACK}{COMMA16}
|
||||
STR_5953 :Ordigi la mapelementojn sur la nuna bloko laŭ iliaj bazaj altecoj.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Aĝo de pejzaĵo: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Lokado de kvadranto: {BLACK}{STRINGID}
|
||||
STR_5954 :Aĝo de pejzaĵo: {BLACK}{COMMA16}
|
||||
STR_5955 :Lokado de kvadranto: {BLACK}{STRINGID}
|
||||
STR_5956 :Sudokcidento
|
||||
STR_5957 :Nordokcidento
|
||||
STR_5958 :Nordoriento
|
||||
STR_5959 :Sudoriento
|
||||
STR_5960 :{WINDOW_COLOUR_2}Lokado de kvadranto:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Eniga indekso: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Koliziditektado:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Altitaj anguloj:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonala
|
||||
STR_5965 :{WINDOW_COLOUR_2}Tipo de enirejo: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parto de parkenirejo: {BLACK}{STRINGID}
|
||||
STR_5960 :Lokado de kvadranto:
|
||||
STR_5961 :Eniga indekso: {BLACK}{COMMA16}
|
||||
STR_5962 :Koliziditektado:
|
||||
STR_5963 :Altitaj anguloj:
|
||||
STR_5964 :Diagonala
|
||||
STR_5965 :Tipo de enirejo: {BLACK}{STRINGID}
|
||||
STR_5966 :Parto de parkenirejo: {BLACK}{STRINGID}
|
||||
STR_5967 :Meza
|
||||
STR_5968 :Maldekstra
|
||||
STR_5969 :Dekstra
|
||||
STR_5970 :{WINDOW_COLOUR_2}Identigilo de enirejo: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Identigilo de elirejo: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Identigilo de atrakcio: {BLACK}{COMMA16}
|
||||
STR_5970 :Identigilo de enirejo: {BLACK}{COMMA16}
|
||||
STR_5971 :Identigilo de elirejo: {BLACK}{COMMA16}
|
||||
STR_5972 :Identigilo de atrakcio: {BLACK}{COMMA16}
|
||||
STR_5973 :Krampi al sekva
|
||||
STR_5974 :Ŝanĝas la bazan kaj interspacan altecojn tiel, ke ili samu kun la sekva elemento sur la nuna bloko. Ĉi tio faciligas konstruon sur ĉi tiu bloko.
|
||||
STR_5975 :Dekliveco:
|
||||
STR_5976 :Plata
|
||||
STR_5977 :Dekstra flanko supren
|
||||
STR_5978 :Maldekstra flanko supren
|
||||
STR_5979 :{WINDOW_COLOUR_2}Tipo de muro: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Teksto de rubando: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Ne estas rubando
|
||||
STR_5982 :{WINDOW_COLOUR_2}Tipo de granda pejzaĝo: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Parto-identigilo de granda pejzaĝo: {BLACK}{COMMA16}
|
||||
STR_5979 :Tipo de muro: {BLACK}{COMMA16}
|
||||
STR_5980 :Teksto de rubando: {BLACK}{STRINGID}
|
||||
STR_5981 :Ne estas rubando
|
||||
STR_5982 :Tipo de granda pejzaĝo: {BLACK}{COMMA16}
|
||||
STR_5983 :Parto-identigilo de granda pejzaĝo: {BLACK}{COMMA16}
|
||||
STR_5984 :Blokitaj trotuaroj:
|
||||
STR_5985 :Nova dosierujo
|
||||
STR_5986 :Tajpu la nomon de la nova dosierujo.
|
||||
|
@ -3483,7 +3483,7 @@ STR_6273 :Muziko
|
|||
STR_6274 :Ne eblas agordi kolorskemon…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Staciostilo:
|
||||
STR_6276 :{RED}{STRINGID} havas gastojn staŭlitajn, eble pro nevalida atrakciotipo aŭ reĝimo de funkciiado.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Stacioindekso: {BLACK}{STRINGID}
|
||||
STR_6277 :Stacioindekso: {BLACK}{STRINGID}
|
||||
STR_6278 :Kiomo por aŭtokonservi
|
||||
STR_6279 :Nombro de aŭtokonservaĵoj por konservi
|
||||
STR_6280 :Por babili
|
||||
|
@ -3516,9 +3516,9 @@ STR_6315 :{WINDOW_COLOUR_2}Celo de vojotrovo: {BLACK}{INT32}, {INT32}, {INT32
|
|||
STR_6316 :{WINDOW_COLOUR_2}Historio de vojotrovo:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :Dissinkronigo de reto detektita.{NEWLINE}Protokolo-dosiero: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Bremso de Blokparto Fermita
|
||||
STR_6320 :{WINDOW_COLOUR_2}Nemalkonstruebla
|
||||
STR_6321 :{WINDOW_COLOUR_2}Aldonaĵo difektas
|
||||
STR_6319 :Bremso de Blokparto Fermita
|
||||
STR_6320 :Nemalkonstruebla
|
||||
STR_6321 :Aldonaĵo difektas
|
||||
STR_6322 :{WINDOW_COLOUR_2}Identigilo de rastrumeto: {BLACK}{INT32}
|
||||
STR_6323 :Simulas
|
||||
STR_6324 :Simuli
|
||||
|
@ -3564,7 +3564,7 @@ STR_6363 :Teksto kopiita al tondujo
|
|||
STR_6364 :{RED}{COMMA16} homo mortis pro akcidento sur {STRINGID}
|
||||
STR_6365 :Mortoj sur atrakcio
|
||||
STR_6366 :Veturiloj staŭlitaj
|
||||
STR_6367 :{WINDOW_COLOUR_2}Kadro de animacio:
|
||||
STR_6367 :Kadro de animacio:
|
||||
STR_6368 :Por kialoj de kongruo, ne estas rekomendita por lanĉi OpenRCT2 per Wine. OpenRCT2 funkciigas indiĝene sur macOS, Linukso, FreeBSD kaj OpenBSD.
|
||||
STR_6369 :Permesi konstruadon de trako al nevalidaj altecoj
|
||||
STR_6370 :Permesas metadon de trakpartoj al iu ajn intervalo de altecoj
|
||||
|
@ -3656,6 +3656,8 @@ STR_6455 :Ne povas renomi surskribaĵon…
|
|||
STR_6456 :Giganta Ekrankopio
|
||||
STR_6457 :Raporti cimon sur GitHub
|
||||
STR_6458 :Sekvi ĉi tion en Ĉefa Vido
|
||||
STR_6460 :D
|
||||
STR_6461 :Direkto
|
||||
|
||||
#############
|
||||
# Scenarios #
|
|
@ -3167,56 +3167,56 @@ STR_5930 :Detalles de Escenario Grande
|
|||
STR_5931 :Detalles de Bandera
|
||||
STR_5932 :Detalles de Elemento Corrupto
|
||||
STR_5933 :Propiedades
|
||||
STR_5934 :{WINDOW_COLOUR_2}Textura de Terreno: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Borde del Terreno: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Dueño de la Tierra: {BLACK}{STRINGID}
|
||||
STR_5934 :Textura de Terreno: {BLACK}{STRINGID}
|
||||
STR_5935 :Borde del Terreno: {BLACK}{STRINGID}
|
||||
STR_5936 :Dueño de la Tierra: {BLACK}{STRINGID}
|
||||
STR_5937 :Sin dueño y no a la venta
|
||||
STR_5938 :{WINDOW_COLOUR_2}Nivel de Agua: {BLACK}{COMMA16}
|
||||
STR_5938 :Nivel de Agua: {BLACK}{COMMA16}
|
||||
STR_5939 :Remover vallas parque
|
||||
STR_5940 :Restaurar vallas parque
|
||||
STR_5941 :{WINDOW_COLOUR_2}Altura Base:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Nombre Sendero: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Adiciones: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Adiciones: {BLACK}Nada
|
||||
STR_5945 :{WINDOW_COLOUR_2}Bordes conectados:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Tipo de Atracción: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}ID de Atracción: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Nombre de Atracción: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Cadena de Elevación
|
||||
STR_5950 :{WINDOW_COLOUR_2}Aplicar cambios a la vía entera
|
||||
STR_5951 :{WINDOW_COLOUR_2}ID Pieza de Vía: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Número de secuencia: {BLACK}{COMMA16}
|
||||
STR_5941 :Altura Base:
|
||||
STR_5942 :Nombre Sendero: {BLACK}{STRINGID}
|
||||
STR_5943 :Adiciones: {BLACK}{STRINGID}
|
||||
STR_5944 :Adiciones: {BLACK}Nada
|
||||
STR_5945 :Bordes conectados:
|
||||
STR_5946 :Tipo de Atracción: {BLACK}{STRINGID}
|
||||
STR_5947 :ID de Atracción: {BLACK}{COMMA16}
|
||||
STR_5948 :Nombre de Atracción: {BLACK}{STRINGID}
|
||||
STR_5949 :Cadena de Elevación
|
||||
STR_5950 :Aplicar cambios a la vía entera
|
||||
STR_5951 :ID Pieza de Vía: {BLACK}{COMMA16}
|
||||
STR_5952 :Número de secuencia: {BLACK}{COMMA16}
|
||||
STR_5953 :Clasificar los elementos del mapa en el mosaico actual en función de su altura base.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Antigüedad del Escenario: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Colocación Cuadrante: {BLACK}{STRINGID}
|
||||
STR_5954 :Antigüedad del Escenario: {BLACK}{COMMA16}
|
||||
STR_5955 :Colocación Cuadrante: {BLACK}{STRINGID}
|
||||
STR_5956 :Suroeste
|
||||
STR_5957 :Noroeste
|
||||
STR_5958 :Nordeste
|
||||
STR_5959 :Sudeste
|
||||
STR_5960 :{WINDOW_COLOUR_2}Colocación Cuadrante:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Índice Entrada: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Detección de Colisión:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Esquinas levantadas:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Tipo Entrada: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parte Entrada del Parque: {BLACK}{STRINGID}
|
||||
STR_5960 :Colocación Cuadrante:
|
||||
STR_5961 :Índice Entrada: {BLACK}{COMMA16}
|
||||
STR_5962 :Detección de Colisión:
|
||||
STR_5963 :Esquinas levantadas:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Tipo Entrada: {BLACK}{STRINGID}
|
||||
STR_5966 :Parte Entrada del Parque: {BLACK}{STRINGID}
|
||||
STR_5967 :Medio
|
||||
STR_5968 :Izquierda
|
||||
STR_5969 :Derecha
|
||||
STR_5970 :{WINDOW_COLOUR_2}ID Entrada: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}ID Salida: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}ID Atracción: {BLACK}{COMMA16}
|
||||
STR_5970 :ID Entrada: {BLACK}{COMMA16}
|
||||
STR_5971 :ID Salida: {BLACK}{COMMA16}
|
||||
STR_5972 :ID Atracción: {BLACK}{COMMA16}
|
||||
STR_5973 :Sujetar al siguiente
|
||||
STR_5974 :Cambia la altura base y el aclaramiento de modo que sea al mismo como el siguiente elemento en el mosaico actual. Hacer esto hace que sea más fácil de construir en esta cuadricula.
|
||||
STR_5975 :Pendiente:
|
||||
STR_5976 :Plano
|
||||
STR_5977 :Lado derecho hacia arriba
|
||||
STR_5978 :Lado izquierdo hacia arriba
|
||||
STR_5979 :{WINDOW_COLOUR_2}Tipo de valla: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Texto de bandera: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}No es una bandera
|
||||
STR_5982 :{WINDOW_COLOUR_2}Tipo de escenario grande: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}ID pieza de escenario grande: {BLACK}{COMMA16}
|
||||
STR_5979 :Tipo de valla: {BLACK}{COMMA16}
|
||||
STR_5980 :Texto de bandera: {BLACK}{STRINGID}
|
||||
STR_5981 :No es una bandera
|
||||
STR_5982 :Tipo de escenario grande: {BLACK}{COMMA16}
|
||||
STR_5983 :ID pieza de escenario grande: {BLACK}{COMMA16}
|
||||
STR_5984 :Caminos Bloqueados:
|
||||
STR_5985 :Nueva Carpeta
|
||||
STR_5986 :Escribe el nombre de la nueva carpeta
|
||||
|
@ -3488,7 +3488,7 @@ STR_6273 :Música
|
|||
STR_6274 :No se puede establecer colores…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Estilo de estación:
|
||||
STR_6276 :{RED}{STRINGID} tiene visitantes trabados, posiblemente por tipo de atracción o modo de operación inválidos.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Índice de estación: {BLACK}{STRINGID}
|
||||
STR_6277 :Índice de estación: {BLACK}{STRINGID}
|
||||
STR_6278 :Cantidad de Autoguardados
|
||||
STR_6279 :Número de archivos de autoguardado a mantener
|
||||
STR_6280 :Chat
|
||||
|
@ -3521,9 +3521,9 @@ STR_6315 :{WINDOW_COLOUR_2}Pathfind objetivo: {BLACK}{INT32}, {INT32}, {INT32
|
|||
STR_6316 :{WINDOW_COLOUR_2}Pathfind historial:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :Desincronización detectada.{NEWLINE}Log: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Bloque de frenado cerrado
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indestructible
|
||||
STR_6321 :{WINDOW_COLOUR_2}Agregado está roto
|
||||
STR_6319 :Bloque de frenado cerrado
|
||||
STR_6320 :Indestructible
|
||||
STR_6321 :Agregado está roto
|
||||
STR_6322 :{WINDOW_COLOUR_2}Id sprite: {BLACK}{INT32}
|
||||
STR_6323 :Simulando
|
||||
STR_6324 :Simular
|
||||
|
@ -3569,7 +3569,7 @@ STR_6363 :Copiar texto al portapapeles
|
|||
STR_6364 :{RED}{COMMA16} persona ha muerto en un accidente a bordo de {STRINGID}
|
||||
STR_6365 :Fallecimientos en la atracción
|
||||
STR_6366 :Vehiculos trabados o parados
|
||||
STR_6367 :{WINDOW_COLOUR_2}Cuadro de animación:
|
||||
STR_6367 :Cuadro de animación:
|
||||
STR_6368 :Por razones de compatibilidad, no se recomienda correr OpenRCT2 sobre Wine. OpenRCT2 tiene soporte nativo para macOS, Linux, FreeBSD y OpenBSD.
|
||||
STR_6369 :Permitir construir en alturas inválidas
|
||||
STR_6370 :Permite construir rieles y piezas en cualquier intervalo de alturas
|
||||
|
@ -3623,6 +3623,8 @@ STR_6455 :No se puede cambiar el nombre del señal…
|
|||
STR_6456 :Captura de pantalla gigante
|
||||
STR_6457 :Informar un error en GitHub
|
||||
STR_6458 :Siga esto en la Vista Principal
|
||||
STR_6460 :D
|
||||
STR_6461 :Dirección
|
||||
|
||||
##############
|
||||
# Escenarios #
|
||||
|
|
|
@ -3169,56 +3169,56 @@ STR_5930 :Suurmaisemoinnin tiedot
|
|||
STR_5931 :Bannerin tiedot
|
||||
STR_5932 :Vioittuneen elementin tiedot
|
||||
STR_5933 :Ominaisuudet
|
||||
STR_5934 :{WINDOW_COLOUR_2}Maastokuviointi: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Maaston sivu: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Maan omistajuus: {BLACK}{STRINGID}
|
||||
STR_5934 :Maastokuviointi: {BLACK}{STRINGID}
|
||||
STR_5935 :Maaston sivu: {BLACK}{STRINGID}
|
||||
STR_5936 :Maan omistajuus: {BLACK}{STRINGID}
|
||||
STR_5937 :Ei omistettu eikä myynnissä
|
||||
STR_5938 :{WINDOW_COLOUR_2}Veden taso: {BLACK}{COMMA16}
|
||||
STR_5938 :Veden taso: {BLACK}{COMMA16}
|
||||
STR_5939 :Poista puiston aidat
|
||||
STR_5940 :Palauta puiston aidat
|
||||
STR_5941 :{WINDOW_COLOUR_2}Pohjakorkeus:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Polun nimi: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Lisäosat: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Lisäosat: {BLACK}Ei mitään
|
||||
STR_5945 :{WINDOW_COLOUR_2}Yhdistetyt reunat:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Laitetyyppi: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Laitetunnus: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Laitteen nimi: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Nostomäki
|
||||
STR_5950 :{WINDOW_COLOUR_2}Sovella muutokset koko rataosaan
|
||||
STR_5951 :{WINDOW_COLOUR_2}Rataosatunnus: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Jaksonumero: {BLACK}{COMMA16}
|
||||
STR_5941 :Pohjakorkeus:
|
||||
STR_5942 :Polun nimi: {BLACK}{STRINGID}
|
||||
STR_5943 :Lisäosat: {BLACK}{STRINGID}
|
||||
STR_5944 :Lisäosat: {BLACK}Ei mitään
|
||||
STR_5945 :Yhdistetyt reunat:
|
||||
STR_5946 :Laitetyyppi: {BLACK}{STRINGID}
|
||||
STR_5947 :Laitetunnus: {BLACK}{COMMA16}
|
||||
STR_5948 :Laitteen nimi: {BLACK}{STRINGID}
|
||||
STR_5949 :Nostomäki
|
||||
STR_5950 :Sovella muutokset koko rataosaan
|
||||
STR_5951 :Rataosatunnus: {BLACK}{COMMA16}
|
||||
STR_5952 :Jaksonumero: {BLACK}{COMMA16}
|
||||
STR_5953 :Järjestä tasoelementit nykyisessä ruudussa korkeuksiensa mukaan.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Maisemoinnin ikä: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Sijoituksen neljäsosa: {BLACK}{STRINGID}
|
||||
STR_5954 :Maisemoinnin ikä: {BLACK}{COMMA16}
|
||||
STR_5955 :Sijoituksen neljäsosa: {BLACK}{STRINGID}
|
||||
STR_5956 :Lounas
|
||||
STR_5957 :Luode
|
||||
STR_5958 :Koillinen
|
||||
STR_5959 :Kaakko
|
||||
STR_5960 :{WINDOW_COLOUR_2}Sijoituksen neljäsosa:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Indeksi: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Törmäystunnistus:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Nostetut kulmat:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Viisto
|
||||
STR_5965 :{WINDOW_COLOUR_2}Sisäänkäynnin tyyppi: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Puistosisäänkäynnin osa: {BLACK}{STRINGID}
|
||||
STR_5960 :Sijoituksen neljäsosa:
|
||||
STR_5961 :Indeksi: {BLACK}{COMMA16}
|
||||
STR_5962 :Törmäystunnistus:
|
||||
STR_5963 :Nostetut kulmat:
|
||||
STR_5964 :Viisto
|
||||
STR_5965 :Sisäänkäynnin tyyppi: {BLACK}{STRINGID}
|
||||
STR_5966 :Puistosisäänkäynnin osa: {BLACK}{STRINGID}
|
||||
STR_5967 :Keski
|
||||
STR_5968 :Vasen
|
||||
STR_5969 :Oikea
|
||||
STR_5970 :{WINDOW_COLOUR_2}Sisäänkäyntitunnus: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Uloskäyntitunnus: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Laitetunnus: {BLACK}{COMMA16}
|
||||
STR_5970 :Sisäänkäyntitunnus: {BLACK}{COMMA16}
|
||||
STR_5971 :Uloskäyntitunnus: {BLACK}{COMMA16}
|
||||
STR_5972 :Laitetunnus: {BLACK}{COMMA16}
|
||||
STR_5973 :Kiinnitä seuraavaan
|
||||
STR_5974 :Muuttaa perus- ja vapaakorkeuden samaan tasoon kuin tämän ruudun seuraava elementti. Tämä tekee tälle ruudulle rakentamisesta helpompaa.
|
||||
STR_5975 :Mäki:
|
||||
STR_5976 :Tasainen
|
||||
STR_5977 :Oikea puoli ylös
|
||||
STR_5978 :Vasen puoli ylös
|
||||
STR_5979 :{WINDOW_COLOUR_2}Seinän tyyppi: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Bannerin teksti: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Ei banneri
|
||||
STR_5982 :{WINDOW_COLOUR_2}Suurmaisemoinnin tyyppi: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Suurmaisemoinnin tunnus: {BLACK}{COMMA16}
|
||||
STR_5979 :Seinän tyyppi: {BLACK}{COMMA16}
|
||||
STR_5980 :Bannerin teksti: {BLACK}{STRINGID}
|
||||
STR_5981 :Ei banneri
|
||||
STR_5982 :Suurmaisemoinnin tyyppi: {BLACK}{COMMA16}
|
||||
STR_5983 :Suurmaisemoinnin tunnus: {BLACK}{COMMA16}
|
||||
STR_5984 :Estetyt polut:
|
||||
STR_5985 :Uusi kansio
|
||||
STR_5986 :Anna nimi uudelle kansiolle.
|
||||
|
@ -3490,7 +3490,7 @@ STR_6273 :Musiikki
|
|||
STR_6274 :Väriskeemaa ei voi valita…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Aseman tyyli:
|
||||
STR_6276 :{RED}Kävijät juuttuvat kohteeseen {STRINGID}, mahdollisesti väärän laitetyypin tai toimintatilan johdosta.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Aseman numero: {BLACK}{STRINGID}
|
||||
STR_6277 :Aseman numero: {BLACK}{STRINGID}
|
||||
STR_6278 :Tallennuksien määrä
|
||||
STR_6279 :Kuinka monta automaattista tallennusta tulisi pitää
|
||||
STR_6280 :Keskustelu
|
||||
|
@ -3523,9 +3523,9 @@ STR_6315 :{WINDOW_COLOUR_2}Polunetsintä: {BLACK}{INT32}, {INT32}, {INT32} su
|
|||
STR_6316 :{WINDOW_COLOUR_2}Polunetsinnän historia:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} suunta {INT32}
|
||||
STR_6318 :Verkkopelin epätahdistus havaittu.{NEWLINE}Lokitiedosto: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Lohkojarru kiinni
|
||||
STR_6320 :{WINDOW_COLOUR_2}Hajoutumaton
|
||||
STR_6321 :{WINDOW_COLOUR_2}Lisäosa on hajonnut
|
||||
STR_6319 :Lohkojarru kiinni
|
||||
STR_6320 :Hajoutumaton
|
||||
STR_6321 :Lisäosa on hajonnut
|
||||
STR_6322 :{WINDOW_COLOUR_2}Spritetunnus: {BLACK}{INT32}
|
||||
STR_6323 :Simuloidaan
|
||||
STR_6324 :Simuloi
|
||||
|
@ -3571,7 +3571,7 @@ STR_6363 :Kopioitu leikepöydälle
|
|||
STR_6364 :{RED}{COMMA16} henkilö on kuollut laitteen {STRINGID} onnettomuudessa
|
||||
STR_6365 :Laitteen uhrit
|
||||
STR_6366 :Juuttuneet vaunut
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animaatiokehys:
|
||||
STR_6367 :Animaatiokehys:
|
||||
STR_6368 :Yhteensopivuussyistä emme suosittele että käytät OpenRCT2:ta Winen kautta. OpenRCT2 tukee natiivisti macOSia, Linuxia, FreeBSD:tä ja OpenBSD:tä.
|
||||
STR_6369 :Salli radan rakennus vääriin korkeuksiin
|
||||
STR_6370 :Sallii radan sijoituksen mihin tahansa korkeuteen
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
# STR_XXXX part is read and XXXX becomes the string id number.
|
||||
# Everything after the colon and before the new line will be saved as the string.
|
||||
# Use # at the beginning of a line to leave a comment.
|
||||
# Follow the translation guidelines here:
|
||||
# https://github.com/OpenRCT2/Localisation/wiki/Translator-guidelines:-fr_FR
|
||||
STR_0000 :
|
||||
STR_0001 :{STRINGID} {COMMA16}
|
||||
STR_0002 :Montagnes russes en spirales
|
||||
|
@ -3169,56 +3171,56 @@ STR_5930 :Détails du grand décor
|
|||
STR_5931 :Détails de la bannière
|
||||
STR_5932 :Détails de l’élément corrompu
|
||||
STR_5933 :Propriétés
|
||||
STR_5934 :{WINDOW_COLOUR_2}Texture du terrain : {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Bords du terrain : {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Propriété du terrain : {BLACK}{STRINGID}
|
||||
STR_5934 :Texture du terrain : {BLACK}{STRINGID}
|
||||
STR_5935 :Bords du terrain : {BLACK}{STRINGID}
|
||||
STR_5936 :Propriété du terrain : {BLACK}{STRINGID}
|
||||
STR_5937 :Pas acquis et pas à vendre
|
||||
STR_5938 :{WINDOW_COLOUR_2}Niveau de l’eau : {BLACK}{COMMA16}
|
||||
STR_5938 :Niveau de l’eau : {BLACK}{COMMA16}
|
||||
STR_5939 :Suppr. clôtures du parc
|
||||
STR_5940 :Restaur. clôtures du parc
|
||||
STR_5941 :{WINDOW_COLOUR_2}Hauteur de base :
|
||||
STR_5942 :{WINDOW_COLOUR_2}Nom de l’allée : {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Ajouts : {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Ajouts : {BLACK}aucun
|
||||
STR_5945 :{WINDOW_COLOUR_2}Côtés connectés :
|
||||
STR_5946 :{WINDOW_COLOUR_2}Type d’attraction : {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}ID de l’attraction : {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Nom de l’attraction : {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Remontée à chaîne
|
||||
STR_5950 :{WINDOW_COLOUR_2}Appliquer les changements à tout l’élément de voie
|
||||
STR_5951 :{WINDOW_COLOUR_2}ID de l’élément de voie : {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Numéro de séquence : {BLACK}{COMMA16}
|
||||
STR_5941 :Hauteur de base :
|
||||
STR_5942 :Nom de l’allée : {BLACK}{STRINGID}
|
||||
STR_5943 :Ajouts : {BLACK}{STRINGID}
|
||||
STR_5944 :Ajouts : {BLACK}aucun
|
||||
STR_5945 :Côtés connectés :
|
||||
STR_5946 :Type d’attraction : {BLACK}{STRINGID}
|
||||
STR_5947 :ID de l’attraction : {BLACK}{COMMA16}
|
||||
STR_5948 :Nom de l’attraction : {BLACK}{STRINGID}
|
||||
STR_5949 :Remontée à chaîne
|
||||
STR_5950 :Appliquer les changements à tout l’élément de voie
|
||||
STR_5951 :ID de l’élément de voie : {BLACK}{COMMA16}
|
||||
STR_5952 :Numéro de séquence : {BLACK}{COMMA16}
|
||||
STR_5953 :Trier les éléments sur la case actuelle en fonction de leur hauteur de base
|
||||
STR_5954 :{WINDOW_COLOUR_2}Âge du décor : {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Placement sur la case : {BLACK}{STRINGID}
|
||||
STR_5954 :Âge du décor : {BLACK}{COMMA16}
|
||||
STR_5955 :Placement sur la case : {BLACK}{STRINGID}
|
||||
STR_5956 :Sud-Ouest
|
||||
STR_5957 :Nord-Ouest
|
||||
STR_5958 :Nord-Est
|
||||
STR_5959 :Sud-Est
|
||||
STR_5960 :{WINDOW_COLOUR_2}Placement sur la case :
|
||||
STR_5961 :{WINDOW_COLOUR_2}Index : {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Détection de collision :
|
||||
STR_5963 :{WINDOW_COLOUR_2}Coins relevés :
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonale
|
||||
STR_5965 :{WINDOW_COLOUR_2}Type d’entrée : {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Partie de l’entrée : {BLACK}{STRINGID}
|
||||
STR_5960 :Placement sur la case :
|
||||
STR_5961 :Index : {BLACK}{COMMA16}
|
||||
STR_5962 :Détection de collision :
|
||||
STR_5963 :Coins relevés :
|
||||
STR_5964 :Diagonale
|
||||
STR_5965 :Type d’entrée : {BLACK}{STRINGID}
|
||||
STR_5966 :Partie de l’entrée : {BLACK}{STRINGID}
|
||||
STR_5967 :milieu
|
||||
STR_5968 :gauche
|
||||
STR_5969 :droite
|
||||
STR_5970 :{WINDOW_COLOUR_2}ID de l’entrée : {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}ID de la sortie : {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}ID de l’attraction : {BLACK}{COMMA16}
|
||||
STR_5970 :ID de l’entrée : {BLACK}{COMMA16}
|
||||
STR_5971 :ID de la sortie : {BLACK}{COMMA16}
|
||||
STR_5972 :ID de l’attraction : {BLACK}{COMMA16}
|
||||
STR_5973 :Attacher au suivant
|
||||
STR_5974 :Change les hauteurs de base et de collision pour qu’elles soient les mêmes que l’élément suivant sur la case. Rend la construction plus facile sur cette case.
|
||||
STR_5975 :Pente :
|
||||
STR_5976 :plat
|
||||
STR_5977 :côté droit vers le haut
|
||||
STR_5978 :côté gauche vers le haut
|
||||
STR_5979 :{WINDOW_COLOUR_2}Type de clôture : {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Texte de bannière : {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Pas une bannière
|
||||
STR_5982 :{WINDOW_COLOUR_2}Type de grand décor : {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}ID de la pièce de grand décor : {BLACK}{COMMA16}
|
||||
STR_5979 :Type de clôture : {BLACK}{COMMA16}
|
||||
STR_5980 :Texte de bannière : {BLACK}{STRINGID}
|
||||
STR_5981 :Pas une bannière
|
||||
STR_5982 :Type de grand décor : {BLACK}{COMMA16}
|
||||
STR_5983 :ID de la pièce de grand décor : {BLACK}{COMMA16}
|
||||
STR_5984 :Allées bloquées :
|
||||
STR_5985 :Nv. dossier
|
||||
STR_5986 :Entrez le nom du nouveau dossier :
|
||||
|
@ -3490,7 +3492,7 @@ STR_6273 :Musique
|
|||
STR_6274 :Impossible de définir la palette de couleurs…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Style de quai :
|
||||
STR_6276 :{RED}{STRINGID} a des visiteurs coincés, probablement à cause d’un type d’attraction invalide ou du mode d’opération
|
||||
STR_6277 :{WINDOW_COLOUR_2}Index du quai : {BLACK}{STRINGID}
|
||||
STR_6277 :Index du quai : {BLACK}{STRINGID}
|
||||
STR_6278 :Nombre de sauv. auto. :
|
||||
STR_6279 :Nombre de sauvegardes automatiques à conserver
|
||||
STR_6280 :Chat
|
||||
|
@ -3523,9 +3525,9 @@ STR_6315 :{WINDOW_COLOUR_2}Objectif recherche chemin : {BLACK}{INT32}, {INT3
|
|||
STR_6316 :{WINDOW_COLOUR_2}Historique recherche chemin :
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :Desynchronisation réseau détectée.{NEWLINE}Fichier journal : {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Bloc de frein fermé
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indestructible
|
||||
STR_6321 :{WINDOW_COLOUR_2}L’ajout est cassé
|
||||
STR_6319 :Bloc de frein fermé
|
||||
STR_6320 :Indestructible
|
||||
STR_6321 :L’ajout est cassé
|
||||
STR_6322 :{WINDOW_COLOUR_2}Identifiant image-objet : {BLACK}{INT32}
|
||||
STR_6323 :Simulation
|
||||
STR_6324 :Simuler
|
||||
|
@ -3571,7 +3573,7 @@ STR_6363 :Texte copié dans le presse-papier
|
|||
STR_6364 :{RED}{COMMA16} personne sont décédées dans un accident sur {STRINGID}
|
||||
STR_6365 :Victimes de l’attraction
|
||||
STR_6366 :Véhicules coincés ou au point mort
|
||||
STR_6367 :{WINDOW_COLOUR_2}Image de l’animation :
|
||||
STR_6367 :Image de l’animation :
|
||||
STR_6368 :Pour des raisons de compatibilité, il n’est pas recommandé d’exécuter OpenRCT2 avec Wine. OpenRCT2 supporte nativement macOS, Linux, FreeBSD et OpenBSD.
|
||||
STR_6369 :Autoriser la construction de voies {NEWLINE}à des hauteurs invalides
|
||||
STR_6370 :Autorise le placement de morceaux de voie à n’importe quelle hauteur
|
||||
|
@ -3663,6 +3665,8 @@ STR_6455 :Impossible de renommer le panneau…
|
|||
STR_6456 :Capture d’écran géante
|
||||
STR_6457 :Signaler un bug sur GitHub
|
||||
STR_6458 :Suivre sur la vue principale
|
||||
STR_6460 :O
|
||||
STR_6461 :Orientation
|
||||
|
||||
#############
|
||||
# Scenarios #
|
||||
|
|
|
@ -3129,56 +3129,56 @@ STR_5930 :Nagy díszlet részletei
|
|||
STR_5931 :Hirdetőtábla részletei
|
||||
STR_5932 :Sérült elem részletei
|
||||
STR_5933 :Tulajdonságok
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terep textúrája: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terep széle: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Földtulajdon: {BLACK}{STRINGID}
|
||||
STR_5934 :Terep textúrája: {BLACK}{STRINGID}
|
||||
STR_5935 :Terep széle: {BLACK}{STRINGID}
|
||||
STR_5936 :Földtulajdon: {BLACK}{STRINGID}
|
||||
STR_5937 :Nincs tulajdonban és nem eladó
|
||||
STR_5938 :{WINDOW_COLOUR_2}Vízszint: {BLACK}{COMMA16}
|
||||
STR_5938 :Vízszint: {BLACK}{COMMA16}
|
||||
STR_5939 :Park kerítésének eltávolítása
|
||||
STR_5940 :Park kerítésének visszaállítása
|
||||
STR_5941 :{WINDOW_COLOUR_2}Alapmagasság:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Út neve: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Extrák: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Extrák: {BLACK}Semmi
|
||||
STR_5945 :{WINDOW_COLOUR_2}Összekapcsolt szélek:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Játék típusa: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Játék ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Játék neve: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Láncos felvonó
|
||||
STR_5950 :{WINDOW_COLOUR_2}Változtatások alkalmazása a teljes pályaelemre
|
||||
STR_5951 :{WINDOW_COLOUR_2}Pályaelem ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sorszám: {BLACK}{COMMA16}
|
||||
STR_5941 :Alapmagasság:
|
||||
STR_5942 :Út neve: {BLACK}{STRINGID}
|
||||
STR_5943 :Extrák: {BLACK}{STRINGID}
|
||||
STR_5944 :Extrák: {BLACK}Semmi
|
||||
STR_5945 :Összekapcsolt szélek:
|
||||
STR_5946 :Játék típusa: {BLACK}{STRINGID}
|
||||
STR_5947 :Játék ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Játék neve: {BLACK}{STRINGID}
|
||||
STR_5949 :Láncos felvonó
|
||||
STR_5950 :Változtatások alkalmazása a teljes pályaelemre
|
||||
STR_5951 :Pályaelem ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sorszám: {BLACK}{COMMA16}
|
||||
STR_5953 :A jelenlegi mező térképelemeinek alapmagasság szerinti rendezése.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Díszlet kora: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Kvadráns helyzet: {BLACK}{STRINGID}
|
||||
STR_5954 :Díszlet kora: {BLACK}{COMMA16}
|
||||
STR_5955 :Kvadráns helyzet: {BLACK}{STRINGID}
|
||||
STR_5956 :Délnyugat
|
||||
STR_5957 :Északnyugat
|
||||
STR_5958 :Északkelet
|
||||
STR_5959 :Délkelet
|
||||
STR_5960 :{WINDOW_COLOUR_2}Kvadráns helyzet:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Belépési index: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Ütközésérzékelés:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Megemelt sarkok:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Átlós
|
||||
STR_5965 :{WINDOW_COLOUR_2}Bejárat típusa: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parkbejárat része: {BLACK}{STRINGID}
|
||||
STR_5960 :Kvadráns helyzet:
|
||||
STR_5961 :Belépési index: {BLACK}{COMMA16}
|
||||
STR_5962 :Ütközésérzékelés:
|
||||
STR_5963 :Megemelt sarkok:
|
||||
STR_5964 :Átlós
|
||||
STR_5965 :Bejárat típusa: {BLACK}{STRINGID}
|
||||
STR_5966 :Parkbejárat része: {BLACK}{STRINGID}
|
||||
STR_5967 :Középső
|
||||
STR_5968 :Bal
|
||||
STR_5969 :Jobb
|
||||
STR_5970 :{WINDOW_COLOUR_2}Bejárat ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Kijárat ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Játék ID: {BLACK}{COMMA16}
|
||||
STR_5970 :Bejárat ID: {BLACK}{COMMA16}
|
||||
STR_5971 :Kijárat ID: {BLACK}{COMMA16}
|
||||
STR_5972 :Játék ID: {BLACK}{COMMA16}
|
||||
STR_5973 :Következőhöz erősítés
|
||||
STR_5974 :Megváltoztatja az alap- és az űrszelvénymagasságot, hogy megegyezzen a jelenlegi mező következő elemével. Ez megkönnyíti az építkezést ezen a mezőn
|
||||
STR_5975 :Elhajlás:
|
||||
STR_5976 :Egyenes
|
||||
STR_5977 :Jobbról felfelé
|
||||
STR_5978 :Balról felfelé
|
||||
STR_5979 :{WINDOW_COLOUR_2}Fal típusa: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Hirdetőtábla szövege: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Nem hirdetőtábla
|
||||
STR_5982 :{WINDOW_COLOUR_2}Nagy díszlet típusa: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Nagy díszletelem ID: {BLACK}{COMMA16}
|
||||
STR_5979 :Fal típusa: {BLACK}{COMMA16}
|
||||
STR_5980 :Hirdetőtábla szövege: {BLACK}{STRINGID}
|
||||
STR_5981 :Nem hirdetőtábla
|
||||
STR_5982 :Nagy díszlet típusa: {BLACK}{COMMA16}
|
||||
STR_5983 :Nagy díszletelem ID: {BLACK}{COMMA16}
|
||||
STR_5984 :Blokkolt utak:
|
||||
STR_5985 :Új mappa
|
||||
STR_5986 :Írd be az új mappa nevét.
|
||||
|
@ -3445,7 +3445,7 @@ STR_6273 :Zene
|
|||
STR_6274 :Nem állítható be színséma…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Állomás stílusa:
|
||||
STR_6276 :A vendégek beragadnak itt: {RED}{STRINGID}. Lehet, hogy érvénytelen játéktípus vagy működési mód okozza.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Állomás index: {BLACK}{STRINGID}
|
||||
STR_6277 :Állomás index: {BLACK}{STRINGID}
|
||||
STR_6278 :Automentések száma
|
||||
STR_6279 :A megőrzendő automentések száma
|
||||
STR_6280 :Chat
|
||||
|
@ -3478,9 +3478,9 @@ STR_6315 :{WINDOW_COLOUR_2}Útkeresési cél: {BLACK}{INT32}, {INT32}, {INT32
|
|||
STR_6316 :{WINDOW_COLOUR_2}Útkeresési előzmények:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} irány {INT32}
|
||||
STR_6318 :Hálózati szinkronizációs hiba észlelve.{NEWLINE}Naplófájl: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Blokkolófék zárva
|
||||
STR_6320 :{WINDOW_COLOUR_2}Elpusztíthatatlan
|
||||
STR_6321 :{WINDOW_COLOUR_2}Törött hozzáadott elem
|
||||
STR_6319 :Blokkolófék zárva
|
||||
STR_6320 :Elpusztíthatatlan
|
||||
STR_6321 :Törött hozzáadott elem
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite Id: {BLACK}{INT32}
|
||||
STR_6323 :Szimuláció folyamatban
|
||||
STR_6324 :Szimulálás
|
||||
|
@ -3526,7 +3526,7 @@ STR_6363 :A szöveg a vágólapra másolva
|
|||
STR_6364 :{RED}{STRINGID} balesete közben {COMMA16} ember meghalt
|
||||
STR_6365 :Játékok áldozatai
|
||||
STR_6366 :Beragadt vagy elakadt járművek
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animációs képkocka:
|
||||
STR_6367 :Animációs képkocka:
|
||||
STR_6368 :Kompatibilitási okok miatt nem javasolt az OpenRCT2 Wine-al történő futtatása. Az OpenRCT2 natív macOS, Linux, FreeBSD és OpenBSD támogatással rendelkezik.
|
||||
STR_6369 :Pályaépítés érvénytelen magasságokban
|
||||
STR_6370 :Lehetővé teszi, hogy bármely köztes magasságban lehessen pályarészeket elhelyezni
|
||||
|
|
|
@ -3168,57 +3168,57 @@ STR_5930 :Dettagli scenario grande
|
|||
STR_5931 :Dettagli cartelli
|
||||
STR_5932 :Dettagli elemento corrotto
|
||||
STR_5933 :Proprietà
|
||||
STR_5934 :{WINDOW_COLOUR_2}Texture terreno: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Bordo terreno: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Proprietà terreno: {BLACK}{STRINGID}
|
||||
STR_5934 :Texture terreno: {BLACK}{STRINGID}
|
||||
STR_5935 :Bordo terreno: {BLACK}{STRINGID}
|
||||
STR_5936 :Proprietà terreno: {BLACK}{STRINGID}
|
||||
STR_5937 :Non posseduto e non in vendita
|
||||
STR_5938 :{WINDOW_COLOUR_2}Livello acqua: {BLACK}{COMMA16}
|
||||
STR_5938 :Livello acqua: {BLACK}{COMMA16}
|
||||
STR_5939 :Rimuovi recinzione parco
|
||||
STR_5940 :Ripristina recinzione parco
|
||||
STR_5941 :{WINDOW_COLOUR_2}Altezza della base:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Nome sentiero: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Aggiunte: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Aggiunte: {BLACK}Nessuna
|
||||
STR_5945 :{WINDOW_COLOUR_2}Spigoli connessi:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Tipo percorso: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}ID percorso: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Nome attrazione: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Catena di traino
|
||||
STR_5950 :{WINDOW_COLOUR_2}Applica cambiamenti a tutto il pezzo di percorso
|
||||
STR_5951 :{WINDOW_COLOUR_2}ID pezzo di percorso: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Numero sequenza: {BLACK}{COMMA16}
|
||||
STR_5941 :Altezza della base:
|
||||
STR_5942 :Nome sentiero: {BLACK}{STRINGID}
|
||||
STR_5943 :Aggiunte: {BLACK}{STRINGID}
|
||||
STR_5944 :Aggiunte: {BLACK}Nessuna
|
||||
STR_5945 :Spigoli connessi:
|
||||
STR_5946 :Tipo percorso: {BLACK}{STRINGID}
|
||||
STR_5947 :ID percorso: {BLACK}{COMMA16}
|
||||
STR_5948 :Nome attrazione: {BLACK}{STRINGID}
|
||||
STR_5949 :Catena di traino
|
||||
STR_5950 :Applica cambiamenti a tutto il pezzo di percorso
|
||||
STR_5951 :ID pezzo di percorso: {BLACK}{COMMA16}
|
||||
STR_5952 :Numero sequenza: {BLACK}{COMMA16}
|
||||
STR_5953 :Ordina gli elementi della mappa nell'attuale cella in ordine di altezza della loro base.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Età scenario: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Posizione quadrante: {BLACK}{STRINGID}
|
||||
STR_5954 :Età scenario: {BLACK}{COMMA16}
|
||||
STR_5955 :Posizione quadrante: {BLACK}{STRINGID}
|
||||
STR_5956 :Sud-ovest
|
||||
STR_5957 :Nord-ovest
|
||||
STR_5958 :Nord-est
|
||||
STR_5959 :Sud-est
|
||||
STR_5960 :{WINDOW_COLOUR_2}Posizione quadrante:
|
||||
STR_5960 :Posizione quadrante:
|
||||
# TODO da rivedere la seguente stringa
|
||||
STR_5961 :{WINDOW_COLOUR_2}Indice elemento: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Rilevamento collisioni:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Angoli rialzati:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonale
|
||||
STR_5965 :{WINDOW_COLOUR_2}Tipo entrata: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parte ingresso del parco: {BLACK}{STRINGID}
|
||||
STR_5961 :Indice elemento: {BLACK}{COMMA16}
|
||||
STR_5962 :Rilevamento collisioni:
|
||||
STR_5963 :Angoli rialzati:
|
||||
STR_5964 :Diagonale
|
||||
STR_5965 :Tipo entrata: {BLACK}{STRINGID}
|
||||
STR_5966 :Parte ingresso del parco: {BLACK}{STRINGID}
|
||||
STR_5967 :Centro
|
||||
STR_5968 :Sinistra
|
||||
STR_5969 :Destra
|
||||
STR_5970 :{WINDOW_COLOUR_2}ID ingresso: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}ID uscita: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}ID percorso: {BLACK}{COMMA16}
|
||||
STR_5970 :ID ingresso: {BLACK}{COMMA16}
|
||||
STR_5971 :ID uscita: {BLACK}{COMMA16}
|
||||
STR_5972 :ID percorso: {BLACK}{COMMA16}
|
||||
STR_5973 :Attacca al successivo
|
||||
STR_5974 :Cambia l'altezza di base e dei margini affinché sia la stessa del successivo elemento sull'attuale cella. Ciò permette di costruire più facilmente su questa cella.
|
||||
STR_5975 :Inclinazione:
|
||||
STR_5976 :Piatto
|
||||
STR_5977 :Lato destro su
|
||||
STR_5978 :Lato sinistro su
|
||||
STR_5979 :{WINDOW_COLOUR_2}Tipo recinzione: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Testo cartello: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Non è un cartello
|
||||
STR_5982 :{WINDOW_COLOUR_2}Tipo scenario grande: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}ID pezzo di scenario grande: {BLACK}{COMMA16}
|
||||
STR_5979 :Tipo recinzione: {BLACK}{COMMA16}
|
||||
STR_5980 :Testo cartello: {BLACK}{STRINGID}
|
||||
STR_5981 :Non è un cartello
|
||||
STR_5982 :Tipo scenario grande: {BLACK}{COMMA16}
|
||||
STR_5983 :ID pezzo di scenario grande: {BLACK}{COMMA16}
|
||||
STR_5984 :Sentieri bloccati:
|
||||
STR_5985 :Nuova cartella
|
||||
STR_5986 :Inserire il nome della nuova cartella.
|
||||
|
@ -3491,7 +3491,7 @@ STR_6273 :Musica
|
|||
STR_6274 :Impossibile impostare schema colore…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Stile stazione:
|
||||
STR_6276 :{RED}{STRINGID} ha ospiti bloccati, probabilmente a causa di un errato tipo di attrazione o modalità operativa.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Indice stazione: {BLACK}{STRINGID}
|
||||
STR_6277 :Indice stazione: {BLACK}{STRINGID}
|
||||
STR_6278 :Numero autosalvataggi
|
||||
STR_6279 :Numero di autosalvataggi da mantenere
|
||||
STR_6280 :Chat
|
||||
|
@ -3524,9 +3524,9 @@ STR_6315 :{WINDOW_COLOUR_2}Obiettivo Pathfind: {BLACK}{INT32}, {INT32}, {INT3
|
|||
STR_6316 :{WINDOW_COLOUR_2}Storico Pathfind:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :Network desync rilevato.{NEWLINE}File log: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Blocco freno chiuso
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indistruttibile
|
||||
STR_6321 :{WINDOW_COLOUR_2}L'aggiunta è rotta
|
||||
STR_6319 :Blocco freno chiuso
|
||||
STR_6320 :Indistruttibile
|
||||
STR_6321 :L'aggiunta è rotta
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite Id: {BLACK}{INT32}
|
||||
STR_6323 :Simulazione
|
||||
STR_6324 :Simula
|
||||
|
@ -3572,7 +3572,7 @@ STR_6363 :Testo copiato negli appunti
|
|||
STR_6365 :Vittime attrazioni
|
||||
STR_6366 :Veicoli fermi o incastrati
|
||||
STR_6364 :{RED}{COMMA16} persona rimasta uccisa in un incidente su {STRINGID}
|
||||
STR_6367 :{WINDOW_COLOUR_2}Fotogramma animazione:
|
||||
STR_6367 :Fotogramma animazione:
|
||||
STR_6368 :Per motivi di compatibilità, non è consigliato eseguire OpenRCT2 tramite Wine. OpenRCT2 offre supporto nativo per macOS, Linux, FreeBSD and OpenBSD.
|
||||
STR_6369 :Permetti costruzione percorsi ad altezze non valide
|
||||
STR_6370 :Permette di collocare pezzi di percorso a qualsiasi intervallo di altezza
|
||||
|
|
|
@ -3158,56 +3158,56 @@ STR_5930 :大景色物ディテール
|
|||
STR_5931 :バナー・ディテール
|
||||
STR_5932 :破損要素ディテール
|
||||
STR_5933 :Properties
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Land ownership: {BLACK}{STRINGID}
|
||||
STR_5934 :Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :Land ownership: {BLACK}{STRINGID}
|
||||
STR_5937 :Not owned and not for sale
|
||||
STR_5938 :{WINDOW_COLOUR_2}Water level: {BLACK}{COMMA16}
|
||||
STR_5938 :Water level: {BLACK}{COMMA16}
|
||||
STR_5939 :Remove park fences
|
||||
STR_5940 :Restore park fences
|
||||
STR_5941 :{WINDOW_COLOUR_2}Base height:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Path name: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Additions: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Additions: {BLACK}None
|
||||
STR_5945 :{WINDOW_COLOUR_2}Connected edges:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Ride type: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Ride ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Ride name: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Chain lift
|
||||
STR_5950 :{WINDOW_COLOUR_2}Apply changes to entire track piece
|
||||
STR_5951 :{WINDOW_COLOUR_2}Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sequence number: {BLACK}{COMMA16}
|
||||
STR_5941 :Base height:
|
||||
STR_5942 :Path name: {BLACK}{STRINGID}
|
||||
STR_5943 :Additions: {BLACK}{STRINGID}
|
||||
STR_5944 :Additions: {BLACK}None
|
||||
STR_5945 :Connected edges:
|
||||
STR_5946 :Ride type: {BLACK}{STRINGID}
|
||||
STR_5947 :Ride ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Ride name: {BLACK}{STRINGID}
|
||||
STR_5949 :Chain lift
|
||||
STR_5950 :Apply changes to entire track piece
|
||||
STR_5951 :Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sequence number: {BLACK}{COMMA16}
|
||||
STR_5953 :Sort the map elements on the current tile based on their base height.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Quadrant placement: {BLACK}{STRINGID}
|
||||
STR_5954 :Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :Quadrant placement: {BLACK}{STRINGID}
|
||||
STR_5956 :南西
|
||||
STR_5957 :北西
|
||||
STR_5958 :北東
|
||||
STR_5959 :南東
|
||||
STR_5960 :{WINDOW_COLOUR_2}Quadrant placement:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Entry index: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Collision detection:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Raised Corners:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Entrance type: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Park entrance part: {BLACK}{STRINGID}
|
||||
STR_5960 :Quadrant placement:
|
||||
STR_5961 :Entry index: {BLACK}{COMMA16}
|
||||
STR_5962 :Collision detection:
|
||||
STR_5963 :Raised Corners:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Entrance type: {BLACK}{STRINGID}
|
||||
STR_5966 :Park entrance part: {BLACK}{STRINGID}
|
||||
STR_5967 :中
|
||||
STR_5968 :左
|
||||
STR_5969 :右
|
||||
STR_5970 :{WINDOW_COLOUR_2}入口のID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}出口のID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}ライドのID: {BLACK}{COMMA16}
|
||||
STR_5970 :入口のID: {BLACK}{COMMA16}
|
||||
STR_5971 :出口のID: {BLACK}{COMMA16}
|
||||
STR_5972 :ライドのID: {BLACK}{COMMA16}
|
||||
STR_5973 :Clamp to next
|
||||
STR_5974 :Changes the base- and clearance height so that it's at the same as the next element on the current tile. Doing this makes it easier to build on this tile.
|
||||
STR_5975 :Slope:
|
||||
STR_5976 :Flat
|
||||
STR_5977 :Right side up
|
||||
STR_5978 :Left side up
|
||||
STR_5979 :{WINDOW_COLOUR_2}Wall type: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Banner text: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Not a banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Large scenery type: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Large scenery piece ID: {BLACK}{COMMA16}
|
||||
STR_5979 :Wall type: {BLACK}{COMMA16}
|
||||
STR_5980 :Banner text: {BLACK}{STRINGID}
|
||||
STR_5981 :Not a banner
|
||||
STR_5982 :Large scenery type: {BLACK}{COMMA16}
|
||||
STR_5983 :Large scenery piece ID: {BLACK}{COMMA16}
|
||||
STR_5984 :Blocked paths:
|
||||
STR_5985 :新しいフォルダ
|
||||
STR_5986 :新しいフォルダの名を入力して下さい。
|
||||
|
@ -3479,7 +3479,7 @@ STR_6273 :音楽
|
|||
STR_6274 :配色の設定できません…
|
||||
STR_6275 :{WINDOW_COLOUR_2}乗り場スタイル:
|
||||
STR_6276 :{RED}{STRINGID}には来客が行き詰まっています。無効な配車タイプまたは操作モードが原因である可能性があります。
|
||||
STR_6277 :{WINDOW_COLOUR_2}乗り場インデックス: {BLACK}{STRINGID}
|
||||
STR_6277 :乗り場インデックス: {BLACK}{STRINGID}
|
||||
STR_6278 :自動保存量
|
||||
STR_6279 :保たれるべきで自動保存の数
|
||||
STR_6280 :チャット
|
||||
|
@ -3512,9 +3512,9 @@ STR_6315 :{WINDOW_COLOUR_2}経路探索の目標: {BLACK}{INT32}, {INT32}, {I
|
|||
STR_6316 :{WINDOW_COLOUR_2}経路探索の歴史:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} 方 {INT32}
|
||||
STR_6318 :Network desync detected.{NEWLINE}Log file: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Block Brake Closed
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indestructible
|
||||
STR_6321 :{WINDOW_COLOUR_2}Addition is broken
|
||||
STR_6319 :Block Brake Closed
|
||||
STR_6320 :Indestructible
|
||||
STR_6321 :Addition is broken
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite Id: {BLACK}{INT32}
|
||||
STR_6323 :シミュレーション中
|
||||
STR_6324 :シミュレーション
|
||||
|
|
|
@ -3165,56 +3165,56 @@ STR_5930 :대형 풍경 상세정보
|
|||
STR_5931 :팻말 상세정보
|
||||
STR_5932 :손상된 요소 상세정보
|
||||
STR_5933 :속성
|
||||
STR_5934 :{WINDOW_COLOUR_2}지형 표면: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}지형 절벽: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}땅 소유 정보: {BLACK}{STRINGID}
|
||||
STR_5934 :지형 표면: {BLACK}{STRINGID}
|
||||
STR_5935 :지형 절벽: {BLACK}{STRINGID}
|
||||
STR_5936 :땅 소유 정보: {BLACK}{STRINGID}
|
||||
STR_5937 :소유주 없음, 판매 중이지 않음
|
||||
STR_5938 :{WINDOW_COLOUR_2}수면 고도: {BLACK}{COMMA16}
|
||||
STR_5938 :수면 고도: {BLACK}{COMMA16}
|
||||
STR_5939 :공원 울타리 제거
|
||||
STR_5940 :공원 울타리 복구
|
||||
STR_5941 :{WINDOW_COLOUR_2}기본 높이:
|
||||
STR_5942 :{WINDOW_COLOUR_2}보도 이름: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}기물: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}기물: {BLACK}없음
|
||||
STR_5945 :{WINDOW_COLOUR_2}연결된 면:
|
||||
STR_5946 :{WINDOW_COLOUR_2}놀이기구 종류: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}놀이기구 ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}놀이기구 이름: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}체인 리프트
|
||||
STR_5950 :{WINDOW_COLOUR_2}전체 트랙 조각에 변경사항 적용
|
||||
STR_5951 :{WINDOW_COLOUR_2}트랙 조각 ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}시퀀스 번호: {BLACK}{COMMA16}
|
||||
STR_5941 :기본 높이:
|
||||
STR_5942 :보도 이름: {BLACK}{STRINGID}
|
||||
STR_5943 :기물: {BLACK}{STRINGID}
|
||||
STR_5944 :기물: {BLACK}없음
|
||||
STR_5945 :연결된 면:
|
||||
STR_5946 :놀이기구 종류: {BLACK}{STRINGID}
|
||||
STR_5947 :놀이기구 ID: {BLACK}{COMMA16}
|
||||
STR_5948 :놀이기구 이름: {BLACK}{STRINGID}
|
||||
STR_5949 :체인 리프트
|
||||
STR_5950 :전체 트랙 조각에 변경사항 적용
|
||||
STR_5951 :트랙 조각 ID: {BLACK}{COMMA16}
|
||||
STR_5952 :시퀀스 번호: {BLACK}{COMMA16}
|
||||
STR_5953 :현재 칸 위의 맵 요소를 기본 높이 순으로 정렬합니다.
|
||||
STR_5954 :{WINDOW_COLOUR_2}풍경 나이: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}1/4칸 위치: {BLACK}{STRINGID}
|
||||
STR_5954 :풍경 나이: {BLACK}{COMMA16}
|
||||
STR_5955 :1/4칸 위치: {BLACK}{STRINGID}
|
||||
STR_5956 :남서
|
||||
STR_5957 :북서
|
||||
STR_5958 :북동
|
||||
STR_5959 :남동
|
||||
STR_5960 :{WINDOW_COLOUR_2}1/4칸 위치:
|
||||
STR_5961 :{WINDOW_COLOUR_2}엔트리 인덱스: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}겹침 탐지:
|
||||
STR_5963 :{WINDOW_COLOUR_2}올라간 구석:
|
||||
STR_5964 :{WINDOW_COLOUR_2}대각선
|
||||
STR_5965 :{WINDOW_COLOUR_2}입구 종류: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}공원 입구 조각: {BLACK}{STRINGID}
|
||||
STR_5960 :1/4칸 위치:
|
||||
STR_5961 :엔트리 인덱스: {BLACK}{COMMA16}
|
||||
STR_5962 :겹침 탐지:
|
||||
STR_5963 :올라간 구석:
|
||||
STR_5964 :대각선
|
||||
STR_5965 :입구 종류: {BLACK}{STRINGID}
|
||||
STR_5966 :공원 입구 조각: {BLACK}{STRINGID}
|
||||
STR_5967 :중간
|
||||
STR_5968 :왼쪽
|
||||
STR_5969 :오른쪽
|
||||
STR_5970 :{WINDOW_COLOUR_2}입구 ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}출구 ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}놀이기구 ID: {BLACK}{COMMA16}
|
||||
STR_5970 :입구 ID: {BLACK}{COMMA16}
|
||||
STR_5971 :출구 ID: {BLACK}{COMMA16}
|
||||
STR_5972 :놀이기구 ID: {BLACK}{COMMA16}
|
||||
STR_5973 :다음 요소로
|
||||
STR_5974 :기본 높이와 객체 높이를 변경하여 현재 칸 위에 있는 다음 요소와 같은 높이로 만듭니다. 이 작업은 이 칸에서의 건설 행위를 더욱 쉽게 만들어줍니다.
|
||||
STR_5975 :경사:
|
||||
STR_5976 :평평함
|
||||
STR_5977 :우측이 올라감
|
||||
STR_5978 :좌측이 올라감
|
||||
STR_5979 :{WINDOW_COLOUR_2}울타리 종류: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}팻말 문구: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}팻말이 아님
|
||||
STR_5982 :{WINDOW_COLOUR_2}대형 풍경 종류: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}대형 풍경 조각 ID: {BLACK}{COMMA16}
|
||||
STR_5979 :울타리 종류: {BLACK}{COMMA16}
|
||||
STR_5980 :팻말 문구: {BLACK}{STRINGID}
|
||||
STR_5981 :팻말이 아님
|
||||
STR_5982 :대형 풍경 종류: {BLACK}{COMMA16}
|
||||
STR_5983 :대형 풍경 조각 ID: {BLACK}{COMMA16}
|
||||
STR_5984 :막힌 보도:
|
||||
STR_5985 :새 폴더
|
||||
STR_5986 :새 폴더의 이름을 입력하세요.
|
||||
|
@ -3486,7 +3486,7 @@ STR_6273 :음악
|
|||
STR_6274 :색상을 지정할 수 없습니다…
|
||||
STR_6275 :{WINDOW_COLOUR_2}정거장 스타일:
|
||||
STR_6276 :{RED}{STRINGID}의 손님이 올바르지 않은 놀이기구 종류나 운행 모드로 인해 끼었습니다.
|
||||
STR_6277 :{WINDOW_COLOUR_2}정거장 번호: {BLACK}{STRINGID}
|
||||
STR_6277 :정거장 번호: {BLACK}{STRINGID}
|
||||
STR_6278 :자동 저장 개수
|
||||
STR_6279 :보관되는 자동 저장 파일의 개수입니다.
|
||||
STR_6280 :채팅
|
||||
|
@ -3519,9 +3519,9 @@ STR_6315 :{WINDOW_COLOUR_2}경로탐색 목표: {BLACK}{INT32}, {INT32}, {INT
|
|||
STR_6316 :{WINDOW_COLOUR_2}경로탐색 기록:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} 방향 {INT32}
|
||||
STR_6318 :네트워크 비동기화가 감지되었습니다.{NEWLINE}로그 파일: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}블록 브레이크 닫기
|
||||
STR_6320 :{WINDOW_COLOUR_2}파괴 불가
|
||||
STR_6321 :{WINDOW_COLOUR_2}기물 부서짐
|
||||
STR_6319 :블록 브레이크 닫기
|
||||
STR_6320 :파괴 불가
|
||||
STR_6321 :기물 부서짐
|
||||
STR_6322 :{WINDOW_COLOUR_2}스프라이트 ID: {BLACK}{INT32}
|
||||
STR_6323 :가상 운행 중
|
||||
STR_6324 :가상 운행
|
||||
|
@ -3567,7 +3567,7 @@ STR_6363 :텍스트를 클립보드에 복사하였습니다
|
|||
STR_6364 :{RED}{COMMA16}명의 손님이 {STRINGID} 사고로 사망하였습니다!
|
||||
STR_6365 :놀이기구 사상자
|
||||
STR_6366 :끼거나 움직이지 않는 놀이기구
|
||||
STR_6367 :{WINDOW_COLOUR_2}애니메이션 프레임:
|
||||
STR_6367 :애니메이션 프레임:
|
||||
STR_6368 :호환성의 이유로, OpenRCT2를 Wine에서 실행하는 것을 권장하지 않습니다. OpenRCT2는 macOS, Linux, FreeBSD, OpenBSD에서 실행하는 것을 기본적으로 지원합니다.
|
||||
STR_6369 :올바르지 않은 높이에 트랙 짓기 허용
|
||||
STR_6370 :어떤 높이에나 트랙 조각을 놓을 수 있게 됩니다
|
||||
|
@ -3659,6 +3659,8 @@ STR_6455 :팻말 이름을 변경할 수 없습니다…
|
|||
STR_6456 :초대형 스크린 샷
|
||||
STR_6457 :GitHub에 버그 제보
|
||||
STR_6458 :따라가기
|
||||
STR_6460 :D
|
||||
STR_6461 :방향
|
||||
|
||||
#############
|
||||
# Scenarios #
|
||||
|
|
|
@ -3163,56 +3163,56 @@ STR_5930 :Stor pynt-detaljer
|
|||
STR_5931 :Bannerdetaljer
|
||||
STR_5932 :Korrupt element-detaljer
|
||||
STR_5933 :Egenskaper
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terrengtekstur: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terrengkant: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Landeierskap: {BLACK}{STRINGID}
|
||||
STR_5934 :Terrengtekstur: {BLACK}{STRINGID}
|
||||
STR_5935 :Terrengkant: {BLACK}{STRINGID}
|
||||
STR_5936 :Landeierskap: {BLACK}{STRINGID}
|
||||
STR_5937 :Ikke eid og ikke til salgs
|
||||
STR_5938 :{WINDOW_COLOUR_2}Vannivå: {BLACK}{COMMA16}
|
||||
STR_5938 :Vannivå: {BLACK}{COMMA16}
|
||||
STR_5939 :Fjern parkgjerder
|
||||
STR_5940 :Gjenopprett parkgjerder
|
||||
STR_5941 :{WINDOW_COLOUR_2}Grunnhøyde:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Navn på gangsti: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Tillegg: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Tillegg: {BLACK}Ingen
|
||||
STR_5945 :{WINDOW_COLOUR_2}Tilliggende kanter:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Attraksjonstype: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Attraksjons-ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Attraksonsnavn: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Trekk
|
||||
STR_5950 :{WINDOW_COLOUR_2}Påfør endringer på banedel
|
||||
STR_5951 :{WINDOW_COLOUR_2}Baneeleent-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sekvensnummer: {BLACK}{COMMA16}
|
||||
STR_5941 :Grunnhøyde:
|
||||
STR_5942 :Navn på gangsti: {BLACK}{STRINGID}
|
||||
STR_5943 :Tillegg: {BLACK}{STRINGID}
|
||||
STR_5944 :Tillegg: {BLACK}Ingen
|
||||
STR_5945 :Tilliggende kanter:
|
||||
STR_5946 :Attraksjonstype: {BLACK}{STRINGID}
|
||||
STR_5947 :Attraksjons-ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Attraksonsnavn: {BLACK}{STRINGID}
|
||||
STR_5949 :Trekk
|
||||
STR_5950 :Påfør endringer på banedel
|
||||
STR_5951 :Baneeleent-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sekvensnummer: {BLACK}{COMMA16}
|
||||
STR_5953 :Sorter elementer på denne ruten basert på grunnhøyde.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Pyntalder: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Kvadrantposisjon: {BLACK}{STRINGID}
|
||||
STR_5954 :Pyntalder: {BLACK}{COMMA16}
|
||||
STR_5955 :Kvadrantposisjon: {BLACK}{STRINGID}
|
||||
STR_5956 :Sørvest
|
||||
STR_5957 :Nordvest
|
||||
STR_5958 :Nordøst
|
||||
STR_5959 :Sørøst
|
||||
STR_5960 :{WINDOW_COLOUR_2}Kvadrantposisjon:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Oppføringsindeks: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Kollisjonsdeteksjon:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Opphøyde hjørner:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Inngangstype: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parkinngangsdel: {BLACK}{STRINGID}
|
||||
STR_5960 :Kvadrantposisjon:
|
||||
STR_5961 :Oppføringsindeks: {BLACK}{COMMA16}
|
||||
STR_5962 :Kollisjonsdeteksjon:
|
||||
STR_5963 :Opphøyde hjørner:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Inngangstype: {BLACK}{STRINGID}
|
||||
STR_5966 :Parkinngangsdel: {BLACK}{STRINGID}
|
||||
STR_5967 :Midten
|
||||
STR_5968 :Venstre
|
||||
STR_5969 :Høyre
|
||||
STR_5970 :{WINDOW_COLOUR_2}Inngangs-ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Utgangs-ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Attraksjons-ID: {BLACK}{COMMA16}
|
||||
STR_5970 :Inngangs-ID: {BLACK}{COMMA16}
|
||||
STR_5971 :Utgangs-ID: {BLACK}{COMMA16}
|
||||
STR_5972 :Attraksjons-ID: {BLACK}{COMMA16}
|
||||
STR_5973 :Fest til neste
|
||||
STR_5974 :Endrer grunn- og klareringshøyden til å være lik neste element på denne ruten. Dette gjør det enklere å bygge på ruten.
|
||||
STR_5975 :Helning:
|
||||
STR_5976 :Vannrett
|
||||
STR_5977 :Høyre side opp
|
||||
STR_5978 :Venstre side opp
|
||||
STR_5979 :{WINDOW_COLOUR_2}Gjerdetype: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Bannertekst: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Ikke et banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Stor pynt-type: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Stor pynt-element-ID: {BLACK}{COMMA16}
|
||||
STR_5979 :Gjerdetype: {BLACK}{COMMA16}
|
||||
STR_5980 :Bannertekst: {BLACK}{STRINGID}
|
||||
STR_5981 :Ikke et banner
|
||||
STR_5982 :Stor pynt-type: {BLACK}{COMMA16}
|
||||
STR_5983 :Stor pynt-element-ID: {BLACK}{COMMA16}
|
||||
STR_5984 :Blokkerte gangstier:
|
||||
STR_5985 :Ny mappe
|
||||
STR_5986 :Skriv inn navnet på den nye mappen.
|
||||
|
@ -3486,7 +3486,7 @@ STR_6273 :Musikk
|
|||
STR_6274 :Kan ikke sette fargevalg…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Stasjon-stil:
|
||||
STR_6276 :{RED}Gjester sitter fast i {STRINGID}, mulig grunnet ugyldig attraksjonstype eller operasjonsmodus.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Stasjonsindeks: {BLACK}{STRINGID}
|
||||
STR_6277 :Stasjonsindeks: {BLACK}{STRINGID}
|
||||
STR_6278 :Antall autolagringer
|
||||
STR_6279 :Antall automatiske lagringer som blir beholdt
|
||||
STR_6280 :Chat
|
||||
|
@ -3520,9 +3520,9 @@ STR_6315 :{WINDOW_COLOUR_2}Stifinner: {BLACK}{INT32}, {INT32}, {INT32} retnin
|
|||
STR_6316 :{WINDOW_COLOUR_2}Stifinnerhistorie:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} retning {INT32}
|
||||
STR_6318 :Mistet synkronisering med server.{NEWLINE}Loggfil: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Blokkbremser stengt
|
||||
STR_6320 :{WINDOW_COLOUR_2}Kan ikke ødelegges
|
||||
STR_6321 :{WINDOW_COLOUR_2}Gangstitillegg er ødelagt
|
||||
STR_6319 :Blokkbremser stengt
|
||||
STR_6320 :Kan ikke ødelegges
|
||||
STR_6321 :Gangstitillegg er ødelagt
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite-ID: {BLACK}{INT32}
|
||||
STR_6323 :Simulerer
|
||||
STR_6324 :Simuler
|
||||
|
|
|
@ -3161,56 +3161,56 @@ STR_5930 :Details groot decor
|
|||
STR_5931 :Details lichtkrant
|
||||
STR_5932 :Details ongeldig element
|
||||
STR_5933 :Eigenschappen
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terreinoppervlak: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Zijkant terrein: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Landeigendom: {BLACK}{STRINGID}
|
||||
STR_5934 :Terreinoppervlak: {BLACK}{STRINGID}
|
||||
STR_5935 :Zijkant terrein: {BLACK}{STRINGID}
|
||||
STR_5936 :Landeigendom: {BLACK}{STRINGID}
|
||||
STR_5937 :Niet in bezit en niet te koop
|
||||
STR_5938 :{WINDOW_COLOUR_2}Waterniveau: {BLACK}{COMMA16}
|
||||
STR_5938 :Waterniveau: {BLACK}{COMMA16}
|
||||
STR_5939 :Parkafscheiding verwijderen
|
||||
STR_5940 :Parkafscheiding herstellen
|
||||
STR_5941 :{WINDOW_COLOUR_2}Hoogte onderkant:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Naam pad: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Extra’s: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Extra’s: {BLACK}Geen
|
||||
STR_5945 :{WINDOW_COLOUR_2}Verbonden randen:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Attractietype: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Attractie-ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Attractienaam: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Ketting
|
||||
STR_5950 :{WINDOW_COLOUR_2}Wijzigingen op hele baanonderdeel doorvoeren
|
||||
STR_5951 :{WINDOW_COLOUR_2}Baanonderdeel-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Volgnummer: {BLACK}{COMMA16}
|
||||
STR_5941 :Hoogte onderkant:
|
||||
STR_5942 :Naam pad: {BLACK}{STRINGID}
|
||||
STR_5943 :Extra’s: {BLACK}{STRINGID}
|
||||
STR_5944 :Extra’s: {BLACK}Geen
|
||||
STR_5945 :Verbonden randen:
|
||||
STR_5946 :Attractietype: {BLACK}{STRINGID}
|
||||
STR_5947 :Attractie-ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Attractienaam: {BLACK}{STRINGID}
|
||||
STR_5949 :Ketting
|
||||
STR_5950 :Wijzigingen op hele baanonderdeel doorvoeren
|
||||
STR_5951 :Baanonderdeel-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Volgnummer: {BLACK}{COMMA16}
|
||||
STR_5953 :Elementen op het huidige vakje sorteren op de hoogte van de onderkant.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Decorleeftijd: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Gekozen hoek: {BLACK}{STRINGID}
|
||||
STR_5954 :Decorleeftijd: {BLACK}{COMMA16}
|
||||
STR_5955 :Gekozen hoek: {BLACK}{STRINGID}
|
||||
STR_5956 :Zuidwest
|
||||
STR_5957 :Noordwest
|
||||
STR_5958 :Noordoost
|
||||
STR_5959 :Zuidoost
|
||||
STR_5960 :{WINDOW_COLOUR_2}Gekozen hoek:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Volgnummer: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Botsingsdetectie:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Verhoogde hoeken:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonaal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Ingangsype: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Gedeelte parkingang: {BLACK}{STRINGID}
|
||||
STR_5960 :Gekozen hoek:
|
||||
STR_5961 :Volgnummer: {BLACK}{COMMA16}
|
||||
STR_5962 :Botsingsdetectie:
|
||||
STR_5963 :Verhoogde hoeken:
|
||||
STR_5964 :Diagonaal
|
||||
STR_5965 :Ingangsype: {BLACK}{STRINGID}
|
||||
STR_5966 :Gedeelte parkingang: {BLACK}{STRINGID}
|
||||
STR_5967 :Midden
|
||||
STR_5968 :Links
|
||||
STR_5969 :Rechts
|
||||
STR_5970 :{WINDOW_COLOUR_2}Ingang-ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Uitgang-ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Attractie-ID: {BLACK}{COMMA16}
|
||||
STR_5970 :Ingang-ID: {BLACK}{COMMA16}
|
||||
STR_5971 :Uitgang-ID: {BLACK}{COMMA16}
|
||||
STR_5972 :Attractie-ID: {BLACK}{COMMA16}
|
||||
STR_5973 :Tegen volgend element plaatsen
|
||||
STR_5974 :Wijzigt de hoogte van de onderkant en bovenkant zodat die aansluit op het volgende element op dit vakje. Dit maakt het makkelijker om op dit vakje te bouwen.
|
||||
STR_5975 :Helling:
|
||||
STR_5976 :Vlak
|
||||
STR_5977 :Rechterkant omhoog
|
||||
STR_5978 :Linkerkant omhoog
|
||||
STR_5979 :{WINDOW_COLOUR_2}Muurtype: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Tekst op lichtkrant: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Geen lichtkrant
|
||||
STR_5982 :{WINDOW_COLOUR_2}Type groot decor: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}ID groot decorstuk: {BLACK}{COMMA16}
|
||||
STR_5979 :Muurtype: {BLACK}{COMMA16}
|
||||
STR_5980 :Tekst op lichtkrant: {BLACK}{STRINGID}
|
||||
STR_5981 :Geen lichtkrant
|
||||
STR_5982 :Type groot decor: {BLACK}{COMMA16}
|
||||
STR_5983 :ID groot decorstuk: {BLACK}{COMMA16}
|
||||
STR_5984 :Geblokkeerde paden:
|
||||
STR_5985 :Nieuwe map
|
||||
STR_5986 :Naam voor de nieuwe map:
|
||||
|
@ -3482,7 +3482,7 @@ STR_6273 :Muziek
|
|||
STR_6274 :Kan kleurenschema niet instellen…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Stationsstijl:
|
||||
STR_6276 :{RED}Bezoekers komen vast te zitten in {STRINGID}, mogelijk door een ongeldig attractietype of ongeldige bedrijfsmodus.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Stationsindex: {BLACK}{STRINGID}
|
||||
STR_6277 :Stationsindex: {BLACK}{STRINGID}
|
||||
STR_6278 :Aantal autosaves
|
||||
STR_6279 :Het aantal autosaves dat moet worden bewaard.
|
||||
STR_6280 :Chat
|
||||
|
@ -3515,9 +3515,9 @@ STR_6315 :{WINDOW_COLOUR_2}Pathfind-doel: {BLACK}{INT32}, {INT32}, {INT32} ri
|
|||
STR_6316 :{WINDOW_COLOUR_2}Pathfind-geschiedenis:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} richting {INT32}
|
||||
STR_6318 :Netwerkdesynchronisatie gedetecteerd.{NEWLINE}Logbestand: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Blokrem is gesloten
|
||||
STR_6320 :{WINDOW_COLOUR_2}Mag niet worden verwijderd
|
||||
STR_6321 :{WINDOW_COLOUR_2}Straatmeubel is kapot
|
||||
STR_6319 :Blokrem is gesloten
|
||||
STR_6320 :Mag niet worden verwijderd
|
||||
STR_6321 :Straatmeubel is kapot
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite-id: {BLACK}{INT32}
|
||||
STR_6323 :Simulatie
|
||||
STR_6324 :Simuleren
|
||||
|
@ -3563,7 +3563,7 @@ STR_6363 :Tekst is naar het klembord gekopieerd.
|
|||
STR_6364 :{RED}{COMMA16} persoon is om het leven gekomen bij een ongeluk in {STRINGID}
|
||||
STR_6365 :Slachtoffers bij ongelukken in attracties
|
||||
STR_6366 :Vastgelopen of afgeslagen voertuigen
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animatieframe:
|
||||
STR_6367 :Animatieframe:
|
||||
STR_6368 :Om compatibiliteitsredenen wordt het afgeraden om OpenRCT2 te draaien via Wine. OpenRCT2 heeft eigen versies voor macOS, Linux, FreeBSD en OpenBSD.
|
||||
STR_6369 :Sta bouwen van attracties op ongeldige hoogtes toe
|
||||
STR_6370 :Maakt het mogelijk om attracties te bouwen op “tussenhoogtes”.
|
||||
|
@ -3655,6 +3655,8 @@ STR_6455 :Kan de tekst van dit bord niet veranderen…
|
|||
STR_6456 :Reuzenscreenshot
|
||||
STR_6457 :Bug rapporteren op GitHub
|
||||
STR_6458 :Volgen in het hoofdvenster
|
||||
STR_6460 :R
|
||||
STR_6461 :Richting
|
||||
|
||||
#############
|
||||
# Scenarios #
|
||||
|
|
|
@ -3162,56 +3162,56 @@ STR_5930 :Szczegóły dużej scenerii
|
|||
STR_5931 :Szczegóły banneru
|
||||
STR_5932 :Szczegóły uszkodzonych elementów
|
||||
STR_5933 :Właściwości
|
||||
STR_5934 :{WINDOW_COLOUR_2}Tekstura terenu: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Krawędź terenu: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Własność terenu: {BLACK}{STRINGID}
|
||||
STR_5934 :Tekstura terenu: {BLACK}{STRINGID}
|
||||
STR_5935 :Krawędź terenu: {BLACK}{STRINGID}
|
||||
STR_5936 :Własność terenu: {BLACK}{STRINGID}
|
||||
STR_5937 :Nie zakupione i nie na sprzedaż
|
||||
STR_5938 :{WINDOW_COLOUR_2}Poziom wody: {BLACK}{COMMA16}
|
||||
STR_5938 :Poziom wody: {BLACK}{COMMA16}
|
||||
STR_5939 :Usuń ogrodzenie parku
|
||||
STR_5940 :Przywróć ogrodzenie parku
|
||||
STR_5941 :{WINDOW_COLOUR_2}Bazowa wysokość:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Adres ścieżki: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Dodatki: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Dodatki: {BLACK}Brak
|
||||
STR_5945 :{WINDOW_COLOUR_2}Połączone krawędzie:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Typ przejażdżki: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}ID przejażdżki: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Nazwa przejażdżki: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Wyciągarka
|
||||
STR_5950 :{WINDOW_COLOUR_2}Zastosuj zmiany dla całego elementu trasy
|
||||
STR_5951 :{WINDOW_COLOUR_2}ID elementu trasy: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Numer sekwencji: {BLACK}{COMMA16}
|
||||
STR_5941 :Bazowa wysokość:
|
||||
STR_5942 :Adres ścieżki: {BLACK}{STRINGID}
|
||||
STR_5943 :Dodatki: {BLACK}{STRINGID}
|
||||
STR_5944 :Dodatki: {BLACK}Brak
|
||||
STR_5945 :Połączone krawędzie:
|
||||
STR_5946 :Typ przejażdżki: {BLACK}{STRINGID}
|
||||
STR_5947 :ID przejażdżki: {BLACK}{COMMA16}
|
||||
STR_5948 :Nazwa przejażdżki: {BLACK}{STRINGID}
|
||||
STR_5949 :Wyciągarka
|
||||
STR_5950 :Zastosuj zmiany dla całego elementu trasy
|
||||
STR_5951 :ID elementu trasy: {BLACK}{COMMA16}
|
||||
STR_5952 :Numer sekwencji: {BLACK}{COMMA16}
|
||||
STR_5953 :Posortuj elementy mapy na podstawie ich wysokości.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Wiek scenografii: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Umiejscowienie ćwiartki: {BLACK}{STRINGID}
|
||||
STR_5954 :Wiek scenografii: {BLACK}{COMMA16}
|
||||
STR_5955 :Umiejscowienie ćwiartki: {BLACK}{STRINGID}
|
||||
STR_5956 :Południowy-zachód
|
||||
STR_5957 :Północny-zachód
|
||||
STR_5958 :Północny-wschód
|
||||
STR_5959 :Południowy-wschód
|
||||
STR_5960 :{WINDOW_COLOUR_2}Umiejscowienie ćwiartki:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Indeks wejścia: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Wykrycie kolizji:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Raised Corners:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Przekątna
|
||||
STR_5965 :{WINDOW_COLOUR_2}Typ wejścia: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Typ wejścia do parku: {BLACK}{STRINGID}
|
||||
STR_5960 :Umiejscowienie ćwiartki:
|
||||
STR_5961 :Indeks wejścia: {BLACK}{COMMA16}
|
||||
STR_5962 :Wykrycie kolizji:
|
||||
STR_5963 :Raised Corners:
|
||||
STR_5964 :Przekątna
|
||||
STR_5965 :Typ wejścia: {BLACK}{STRINGID}
|
||||
STR_5966 :Typ wejścia do parku: {BLACK}{STRINGID}
|
||||
STR_5967 :Pośrodku
|
||||
STR_5968 :Lewo
|
||||
STR_5969 :Prawo
|
||||
STR_5970 :{WINDOW_COLOUR_2}ID Wejścia: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}ID wyjścia: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}ID Tras: {BLACK}{COMMA16}
|
||||
STR_5970 :ID Wejścia: {BLACK}{COMMA16}
|
||||
STR_5971 :ID wyjścia: {BLACK}{COMMA16}
|
||||
STR_5972 :ID Tras: {BLACK}{COMMA16}
|
||||
STR_5973 :Zaczep z następnym
|
||||
STR_5974 :Zmienia wysokość podstawy i prześwitu tak, aby znajdowały się one na tym samym poziomie co następny element na bieżącej platformie. Ułatwia to budowę na tej samej platformie.
|
||||
STR_5975 :Nachylenie:
|
||||
STR_5976 :Płaszczyzna
|
||||
STR_5977 :Prawą stroną do góry
|
||||
STR_5978 :Lewą stroną do góry
|
||||
STR_5979 :{WINDOW_COLOUR_2}Typ muru: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Tekst baneru: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}To nie jest baner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Rodzaj dużej scenerii: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}ID elementu dużej scenerii: {BLACK}{COMMA16}
|
||||
STR_5979 :Typ muru: {BLACK}{COMMA16}
|
||||
STR_5980 :Tekst baneru: {BLACK}{STRINGID}
|
||||
STR_5981 :To nie jest baner
|
||||
STR_5982 :Rodzaj dużej scenerii: {BLACK}{COMMA16}
|
||||
STR_5983 :ID elementu dużej scenerii: {BLACK}{COMMA16}
|
||||
STR_5984 :Zablokowane ścieżki:
|
||||
STR_5985 :Nowy katalog
|
||||
STR_5986 :Wprowadź nazwę nowego katalogu.
|
||||
|
@ -3483,7 +3483,7 @@ STR_6273 :Muzyka
|
|||
STR_6274 :Nie można ustawić schematu koloru…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Styl stacji:
|
||||
STR_6276 :Na {RED}{STRINGID} utykają goście, prawdopodobnie z powodu nieprawidłowego typu atrakcji albo trybu operowania.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Numer stacji: {BLACK}{STRINGID}
|
||||
STR_6277 :Numer stacji: {BLACK}{STRINGID}
|
||||
STR_6278 :Liczba autozapisów
|
||||
STR_6279 :Liczba autozapisów powinna zostać zachowana
|
||||
STR_6280 :Czat
|
||||
|
@ -3516,9 +3516,9 @@ STR_6315 :{WINDOW_COLOUR_2}Cel wykrywania ścieżki: {BLACK}{INT32}, {INT32},
|
|||
STR_6316 :{WINDOW_COLOUR_2}Historia wykrywania ścieżki:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} folder {INT32}
|
||||
STR_6318 :Desynchronizacja sieci.{NEWLINE}Plik z logami: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Hamulec blokowy zamknięty
|
||||
STR_6320 :{WINDOW_COLOUR_2}Niezniszczalne
|
||||
STR_6321 :{WINDOW_COLOUR_2}Dodatek jest uszkodzony
|
||||
STR_6319 :Hamulec blokowy zamknięty
|
||||
STR_6320 :Niezniszczalne
|
||||
STR_6321 :Dodatek jest uszkodzony
|
||||
STR_6322 :{WINDOW_COLOUR_2}Identyfikator sprite'a: {BLACK}{INT32}
|
||||
STR_6323 :Symulowanie
|
||||
STR_6324 :Symuluj
|
||||
|
@ -3564,7 +3564,7 @@ STR_6363 :Tekst skopiowany do schowka
|
|||
STR_6364 :{RED}{COMMA16} osoba zmarła w wypadku na {STRINGID}
|
||||
STR_6365 :Ofiary atrakcji
|
||||
STR_6366 :Zablokowane pojazdy
|
||||
STR_6367 :{WINDOW_COLOUR_2}Klatka animacji:
|
||||
STR_6367 :Klatka animacji:
|
||||
STR_6368 :Z powodów kompatybilności nie zaleca się uruchamiania OpenRCT2 na Wine. OpenRCT2 działa poprawnie na macOS, Linux, FreeBSD i OpenBSD.
|
||||
STR_6369 :Zezwól na budowanie torów na dowolnych wysokościach
|
||||
STR_6370 :Zezwala na ustawianie fragmentów torów na dowolnych interwałach wysokościowych
|
||||
|
|
|
@ -3162,56 +3162,56 @@ STR_5930 :Detalhes de cenário grande
|
|||
STR_5931 :Detalhes de banner
|
||||
STR_5932 :Detalhes de elemento corrompido
|
||||
STR_5933 :Propriedades
|
||||
STR_5934 :{WINDOW_COLOUR_2}Textura do terreno: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Borda do terreno: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Posse de terra: {BLACK}{STRINGID}
|
||||
STR_5934 :Textura do terreno: {BLACK}{STRINGID}
|
||||
STR_5935 :Borda do terreno: {BLACK}{STRINGID}
|
||||
STR_5936 :Posse de terra: {BLACK}{STRINGID}
|
||||
STR_5937 :Não comprado e não está à venda
|
||||
STR_5938 :{WINDOW_COLOUR_2}Nível da água: {BLACK}{COMMA16}
|
||||
STR_5938 :Nível da água: {BLACK}{COMMA16}
|
||||
STR_5939 :Remover cercas do parque
|
||||
STR_5940 :Restaurar cercas do parque
|
||||
STR_5941 :{WINDOW_COLOUR_2}Altura da base:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Nome do caminho: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Adições: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Adições: {BLACK}Nenhuma
|
||||
STR_5945 :{WINDOW_COLOUR_2}Bordas conectadas:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Tipo de atração: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}ID da atração: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Nome da atração: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Corrente de elevação
|
||||
STR_5950 :{WINDOW_COLOUR_2}Aplicar mudanças para a pista toda
|
||||
STR_5951 :{WINDOW_COLOUR_2}ID do pedaço de pista: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Número sequencial: {BLACK}{COMMA16}
|
||||
STR_5941 :Altura da base:
|
||||
STR_5942 :Nome do caminho: {BLACK}{STRINGID}
|
||||
STR_5943 :Adições: {BLACK}{STRINGID}
|
||||
STR_5944 :Adições: {BLACK}Nenhuma
|
||||
STR_5945 :Bordas conectadas:
|
||||
STR_5946 :Tipo de atração: {BLACK}{STRINGID}
|
||||
STR_5947 :ID da atração: {BLACK}{COMMA16}
|
||||
STR_5948 :Nome da atração: {BLACK}{STRINGID}
|
||||
STR_5949 :Corrente de elevação
|
||||
STR_5950 :Aplicar mudanças para a pista toda
|
||||
STR_5951 :ID do pedaço de pista: {BLACK}{COMMA16}
|
||||
STR_5952 :Número sequencial: {BLACK}{COMMA16}
|
||||
STR_5953 :Sortear os elementos do mapa no azulejo atual baseado em sua altura base.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Idade do cenário: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Posicionamento em quadrante: {BLACK}{STRINGID}
|
||||
STR_5954 :Idade do cenário: {BLACK}{COMMA16}
|
||||
STR_5955 :Posicionamento em quadrante: {BLACK}{STRINGID}
|
||||
STR_5956 :Sudoeste
|
||||
STR_5957 :Noroeste
|
||||
STR_5958 :Nordeste
|
||||
STR_5959 :Sudeste
|
||||
STR_5960 :{WINDOW_COLOUR_2}Posicionamento em quadrante:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Índice de entrada: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Detecção de colisão:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Cantos elevados:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Tipo de entrada: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parte de entrada do parque: {BLACK}{STRINGID}
|
||||
STR_5960 :Posicionamento em quadrante:
|
||||
STR_5961 :Índice de entrada: {BLACK}{COMMA16}
|
||||
STR_5962 :Detecção de colisão:
|
||||
STR_5963 :Cantos elevados:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Tipo de entrada: {BLACK}{STRINGID}
|
||||
STR_5966 :Parte de entrada do parque: {BLACK}{STRINGID}
|
||||
STR_5967 :Meio
|
||||
STR_5968 :Esquerda
|
||||
STR_5969 :Direita
|
||||
STR_5970 :{WINDOW_COLOUR_2}ID da entrada: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}ID da saída: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}ID da atração: {BLACK}{COMMA16}
|
||||
STR_5970 :ID da entrada: {BLACK}{COMMA16}
|
||||
STR_5971 :ID da saída: {BLACK}{COMMA16}
|
||||
STR_5972 :ID da atração: {BLACK}{COMMA16}
|
||||
STR_5973 :Prender ao próximo
|
||||
STR_5974 :Muda a base e a altura de segurança para que sejam as mesmas que o próximo elemento no azulejo atual. Fazendo isto fica mais fácil de construir neste azulejo.
|
||||
STR_5975 :Inclinação:
|
||||
STR_5976 :Reto
|
||||
STR_5977 :Direita para cima
|
||||
STR_5978 :Esquerda para cima
|
||||
STR_5979 :{WINDOW_COLOUR_2}Tipo de cerca: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Texto do banner: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Não é um banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Tipo de cenário grande: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}ID da peça de cenário grande: {BLACK}{COMMA16}
|
||||
STR_5979 :Tipo de cerca: {BLACK}{COMMA16}
|
||||
STR_5980 :Texto do banner: {BLACK}{STRINGID}
|
||||
STR_5981 :Não é um banner
|
||||
STR_5982 :Tipo de cenário grande: {BLACK}{COMMA16}
|
||||
STR_5983 :ID da peça de cenário grande: {BLACK}{COMMA16}
|
||||
STR_5984 :Caminhos bloqueados:
|
||||
STR_5985 :Nova pasta
|
||||
STR_5986 :Insira o nome da nova pasta.
|
||||
|
@ -3483,7 +3483,7 @@ STR_6273 :Música
|
|||
STR_6274 :Impossível definir esquema de cor…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Estilo da estação:
|
||||
STR_6276 :{RED}{STRINGID} está deixando visitantes presos, possivelmente por um tipo de brinquedo ou modo de operação inválido.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Índice de estação: {BLACK}{STRINGID}
|
||||
STR_6277 :Índice de estação: {BLACK}{STRINGID}
|
||||
STR_6278 :Quantidade de Autosave
|
||||
STR_6279 :Número de autosaves que devem ser guardados
|
||||
STR_6280 :Bate-papo
|
||||
|
@ -3516,9 +3516,9 @@ STR_6315 :{WINDOW_COLOUR_2}Objetivo de Desbravamento: {BLACK}{INT32}, {INT32}
|
|||
STR_6316 :{WINDOW_COLOUR_2}Histórico de Desbravamento:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :Assincronia de rede detectada.{NEWLINE}Arquivo de registro: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Freios Bloqueadores Fechados
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indestrutível
|
||||
STR_6321 :{WINDOW_COLOUR_2}Adição quebrada
|
||||
STR_6319 :Freios Bloqueadores Fechados
|
||||
STR_6320 :Indestrutível
|
||||
STR_6321 :Adição quebrada
|
||||
STR_6322 :{WINDOW_COLOUR_2}Id da Sprite: {BLACK}{INT32}
|
||||
STR_6323 :Simulando
|
||||
STR_6324 :Simular
|
||||
|
@ -3564,7 +3564,7 @@ STR_6363 :Texto copiado para a área de transferência
|
|||
STR_6364 :{RED}{COMMA16} pessoa morreu em um acidente em {STRINGID}
|
||||
STR_6365 :Acidentes em atrações
|
||||
STR_6366 :Veículos presos ou parados
|
||||
STR_6367 :{WINDOW_COLOUR_2}Quadro de animação:
|
||||
STR_6367 :Quadro de animação:
|
||||
STR_6368 :Por questão de compatibilidade, não é recomendado executar o OpenRCT2 com Wine. O OpenRCT2 tem suporte nativo a macOS, Linux, FreeBSD e OpenBSD.
|
||||
STR_6369 :Permitir construção de trilhos em alturas inválidas
|
||||
STR_6370 :Permite a construção de trilhos em qualquer intervalo de altura
|
||||
|
|
|
@ -3165,56 +3165,56 @@ STR_5930 :Information om stora dekorationer
|
|||
STR_5931 :Banderollinformation
|
||||
STR_5932 :Information om korrupt element
|
||||
STR_5933 :Egenskaper
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terrängtextur: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terrängkant: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Ägd mark: {BLACK}{STRINGID}
|
||||
STR_5934 :Terrängtextur: {BLACK}{STRINGID}
|
||||
STR_5935 :Terrängkant: {BLACK}{STRINGID}
|
||||
STR_5936 :Ägd mark: {BLACK}{STRINGID}
|
||||
STR_5937 :Inte ägd och inte till salu
|
||||
STR_5938 :{WINDOW_COLOUR_2}Vattennivå: {BLACK}{COMMA16}
|
||||
STR_5938 :Vattennivå: {BLACK}{COMMA16}
|
||||
STR_5939 :Ta bort parkstängsel
|
||||
STR_5940 :Återställ parkstängsel
|
||||
STR_5941 :{WINDOW_COLOUR_2}Bashöjd:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Gångnamn: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Tillägg: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Tillägg: {BLACK}Ingen
|
||||
STR_5945 :{WINDOW_COLOUR_2}Anslutna kanter:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Åktur typ: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Åktursidentifikation: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Åktursnamn: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Kedjelyft
|
||||
STR_5950 :{WINDOW_COLOUR_2}Verkställ ändringar för hela spåret
|
||||
STR_5951 :{WINDOW_COLOUR_2}Spårdels-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sekvensnummer: {BLACK}{COMMA16}
|
||||
STR_5941 :Bashöjd:
|
||||
STR_5942 :Gångnamn: {BLACK}{STRINGID}
|
||||
STR_5943 :Tillägg: {BLACK}{STRINGID}
|
||||
STR_5944 :Tillägg: {BLACK}Ingen
|
||||
STR_5945 :Anslutna kanter:
|
||||
STR_5946 :Åktur typ: {BLACK}{STRINGID}
|
||||
STR_5947 :Åktursidentifikation: {BLACK}{COMMA16}
|
||||
STR_5948 :Åktursnamn: {BLACK}{STRINGID}
|
||||
STR_5949 :Kedjelyft
|
||||
STR_5950 :Verkställ ändringar för hela spåret
|
||||
STR_5951 :Spårdels-ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sekvensnummer: {BLACK}{COMMA16}
|
||||
STR_5953 :Sortera element på den valda rutan baserat på deras höjd.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Dekorationens ålder: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Placering i väderstreck: {BLACK}{STRINGID}
|
||||
STR_5954 :Dekorationens ålder: {BLACK}{COMMA16}
|
||||
STR_5955 :Placering i väderstreck: {BLACK}{STRINGID}
|
||||
STR_5956 :Sydväst
|
||||
STR_5957 :Nordväst
|
||||
STR_5958 :Nordost
|
||||
STR_5959 :Sydost
|
||||
STR_5960 :{WINDOW_COLOUR_2}Placering i väderstreck:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Entré-index: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Kollisionsdetektering:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Upphöjda hörn:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Entrétyp: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Parkentré-del: {BLACK}{STRINGID}
|
||||
STR_5960 :Placering i väderstreck:
|
||||
STR_5961 :Entré-index: {BLACK}{COMMA16}
|
||||
STR_5962 :Kollisionsdetektering:
|
||||
STR_5963 :Upphöjda hörn:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Entrétyp: {BLACK}{STRINGID}
|
||||
STR_5966 :Parkentré-del: {BLACK}{STRINGID}
|
||||
STR_5967 :Mitten
|
||||
STR_5968 :Vänster
|
||||
STR_5969 :Höger
|
||||
STR_5970 :{WINDOW_COLOUR_2}Entré-id: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Utgångs-id: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Åkturs-id: {BLACK}{COMMA16}
|
||||
STR_5970 :Entré-id: {BLACK}{COMMA16}
|
||||
STR_5971 :Utgångs-id: {BLACK}{COMMA16}
|
||||
STR_5972 :Åkturs-id: {BLACK}{COMMA16}
|
||||
STR_5973 :Fäst till nästa
|
||||
STR_5974 :Ändra bas- och frihöjd så det är samma som nästa element på den valda rutan. Genom att göra detta blir det lättare bygga på denna ruta.
|
||||
STR_5975 :Backe:
|
||||
STR_5976 :Plan
|
||||
STR_5977 :Höger sida upp
|
||||
STR_5978 :Vänster sida upp
|
||||
STR_5979 :{WINDOW_COLOUR_2}Stängsel typ: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Banderoll text: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Inte en banderoll
|
||||
STR_5982 :{WINDOW_COLOUR_2}Stor dekoration typ: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Stor dekorationsdels-id: {BLACK}{COMMA16}
|
||||
STR_5979 :Stängsel typ: {BLACK}{COMMA16}
|
||||
STR_5980 :Banderoll text: {BLACK}{STRINGID}
|
||||
STR_5981 :Inte en banderoll
|
||||
STR_5982 :Stor dekoration typ: {BLACK}{COMMA16}
|
||||
STR_5983 :Stor dekorationsdels-id: {BLACK}{COMMA16}
|
||||
STR_5984 :Blockerade gångar:
|
||||
STR_5985 :Ny mapp
|
||||
STR_5986 :Skriv in namnet på den nya mappen.
|
||||
|
@ -3486,7 +3486,7 @@ STR_6273 :Musik
|
|||
STR_6274 :Kan inte välja färgschema…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Stationsstil:
|
||||
STR_6276 :{RED}{STRINGID} har besökare som sitter fast, troligen på grund av ogiltig typ av åktur eller felaktigt körläge.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Stationsindex: {BLACK}{STRINGID}
|
||||
STR_6277 :Stationsindex: {BLACK}{STRINGID}
|
||||
STR_6278 :Antal autosparningar
|
||||
STR_6279 :Antal automatiska sparningar att behålla
|
||||
STR_6280 :Chatt
|
||||
|
@ -3519,9 +3519,9 @@ STR_6315 :{WINDOW_COLOUR_2}Sök efter mål: {BLACK}{INT32}, {INT32}, {INT32}
|
|||
STR_6316 :{WINDOW_COLOUR_2}Sök efter historik:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} riktning {INT32}
|
||||
STR_6318 :Synkroniseringsfel upptäckt över nätverket.{NEWLINE}Loggfil: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Blockera Bromsa Stängd
|
||||
STR_6320 :{WINDOW_COLOUR_2}Oförstörbar
|
||||
STR_6321 :{WINDOW_COLOUR_2}Addition fungerar inte
|
||||
STR_6319 :Blockera Bromsa Stängd
|
||||
STR_6320 :Oförstörbar
|
||||
STR_6321 :Addition fungerar inte
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite-id: {BLACK}{INT32}
|
||||
STR_6323 :Simulerar
|
||||
STR_6324 :Simulera
|
||||
|
@ -3567,7 +3567,7 @@ STR_6363 :Text kopierad till urklipp
|
|||
STR_6364 :{RED}{COMMA16} person omkom i en olycka på {STRINGID}
|
||||
STR_6365 :Omkomna
|
||||
STR_6366 :Vagnar som fastnat eller stannat upp
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animationsruta:
|
||||
STR_6367 :Animationsruta:
|
||||
STR_6368 :Av kompatibilitetsskäl är det inte rekommenderat att köra OpenRCT2 med Wine. OpenRCT2 har direkt stöd för macOS, Linux, FreeBSD och OpenBSD.
|
||||
STR_6369 :Tillåt spårbygge på ogiltiga höjder
|
||||
STR_6370 :Tillåter bygge av spårdelar på alla höjdintervall
|
||||
|
|
|
@ -3157,56 +3157,56 @@ STR_5930 :Büyük dekorasyon bilgileri
|
|||
STR_5931 :Banner bilgileri
|
||||
STR_5932 :Arızalı madde bilgileri
|
||||
STR_5933 :Özellikler
|
||||
STR_5934 :{WINDOW_COLOUR_2}Zemin türü: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Duvar türü: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Arazi durumu: {BLACK}{STRINGID}
|
||||
STR_5934 :Zemin türü: {BLACK}{STRINGID}
|
||||
STR_5935 :Duvar türü: {BLACK}{STRINGID}
|
||||
STR_5936 :Arazi durumu: {BLACK}{STRINGID}
|
||||
STR_5937 :Hazine malı ve satılık değil
|
||||
STR_5938 :{WINDOW_COLOUR_2}Su seviyesi: {BLACK}{COMMA16}
|
||||
STR_5938 :Su seviyesi: {BLACK}{COMMA16}
|
||||
STR_5939 :Park sınırını kaldır
|
||||
STR_5940 :Park sınırını geri ekle
|
||||
STR_5941 :{WINDOW_COLOUR_2}Yükseklik seviyesi:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Yol türü: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Eklenti: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Eklenti: {BLACK}Yok
|
||||
STR_5945 :{WINDOW_COLOUR_2}Bağlantı noktaları:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Tür: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Isim: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Tırmanma zinciri
|
||||
STR_5950 :{WINDOW_COLOUR_2}Değişiklikleri tüm raylara uygula
|
||||
STR_5951 :{WINDOW_COLOUR_2}Parça ID'si: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Seviye sıralama numarası: {BLACK}{COMMA16}
|
||||
STR_5941 :Yükseklik seviyesi:
|
||||
STR_5942 :Yol türü: {BLACK}{STRINGID}
|
||||
STR_5943 :Eklenti: {BLACK}{STRINGID}
|
||||
STR_5944 :Eklenti: {BLACK}Yok
|
||||
STR_5945 :Bağlantı noktaları:
|
||||
STR_5946 :Tür: {BLACK}{STRINGID}
|
||||
STR_5947 :ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Isim: {BLACK}{STRINGID}
|
||||
STR_5949 :Tırmanma zinciri
|
||||
STR_5950 :Değişiklikleri tüm raylara uygula
|
||||
STR_5951 :Parça ID'si: {BLACK}{COMMA16}
|
||||
STR_5952 :Seviye sıralama numarası: {BLACK}{COMMA16}
|
||||
STR_5953 :Maddeleri yükseklik seviyesine göre sırala
|
||||
STR_5954 :{WINDOW_COLOUR_2}Dekorasyon yaşı: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Kare içindeki pozisyonu: {BLACK}{STRINGID}
|
||||
STR_5954 :Dekorasyon yaşı: {BLACK}{COMMA16}
|
||||
STR_5955 :Kare içindeki pozisyonu: {BLACK}{STRINGID}
|
||||
STR_5956 :Güneybatı
|
||||
STR_5957 :Kuzeybatı
|
||||
STR_5958 :Kuzeydoğu
|
||||
STR_5959 :Güneydoğu
|
||||
STR_5960 :{WINDOW_COLOUR_2}Kare içindeki pozisyonu:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Kayıt endeksi: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Çarpışma tespidi:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Kenar yükseltme:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Eğimli
|
||||
STR_5965 :{WINDOW_COLOUR_2}Giriş türü: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Park girişi yönü: {BLACK}{STRINGID}
|
||||
STR_5960 :Kare içindeki pozisyonu:
|
||||
STR_5961 :Kayıt endeksi: {BLACK}{COMMA16}
|
||||
STR_5962 :Çarpışma tespidi:
|
||||
STR_5963 :Kenar yükseltme:
|
||||
STR_5964 :Eğimli
|
||||
STR_5965 :Giriş türü: {BLACK}{STRINGID}
|
||||
STR_5966 :Park girişi yönü: {BLACK}{STRINGID}
|
||||
STR_5967 :Orta
|
||||
STR_5968 :Sol
|
||||
STR_5969 :Sağ
|
||||
STR_5970 :{WINDOW_COLOUR_2}Giriş ID'si: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Çıkış ID'si: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Alet ID'si: {BLACK}{COMMA16}
|
||||
STR_5970 :Giriş ID'si: {BLACK}{COMMA16}
|
||||
STR_5971 :Çıkış ID'si: {BLACK}{COMMA16}
|
||||
STR_5972 :Alet ID'si: {BLACK}{COMMA16}
|
||||
STR_5973 :Bir sonrakine yapıştır
|
||||
STR_5974 :Arızalı maddenin taban ve açıklık yükseğini seçdiğiniz maddeden kopyalayıp arızalı maddeye ekleyiniz
|
||||
STR_5975 :Eğim:
|
||||
STR_5976 :Düz
|
||||
STR_5977 :Sağ taraf yukarı
|
||||
STR_5978 :Sol taraf yukarı
|
||||
STR_5979 :{WINDOW_COLOUR_2}Duvar türü: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Banner metni: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Banner değil
|
||||
STR_5982 :{WINDOW_COLOUR_2}Büyük dekorasyon türü: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Büyük dekorasyon ID'si: {BLACK}{COMMA16}
|
||||
STR_5979 :Duvar türü: {BLACK}{COMMA16}
|
||||
STR_5980 :Banner metni: {BLACK}{STRINGID}
|
||||
STR_5981 :Banner değil
|
||||
STR_5982 :Büyük dekorasyon türü: {BLACK}{COMMA16}
|
||||
STR_5983 :Büyük dekorasyon ID'si: {BLACK}{COMMA16}
|
||||
STR_5984 :Blocked paths:
|
||||
STR_5985 :Yeni klasör
|
||||
STR_5986 :Yeni klasör ismi giriniz
|
||||
|
|
|
@ -3164,56 +3164,56 @@ STR_5930 :Large scenery details
|
|||
STR_5931 :Banner details
|
||||
STR_5932 :Corrupt element details
|
||||
STR_5933 :Properties
|
||||
STR_5934 :{WINDOW_COLOUR_2}Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}Land ownership: {BLACK}{STRINGID}
|
||||
STR_5934 :Terrain texture: {BLACK}{STRINGID}
|
||||
STR_5935 :Terrain edge: {BLACK}{STRINGID}
|
||||
STR_5936 :Land ownership: {BLACK}{STRINGID}
|
||||
STR_5937 :Not owned and not for sale
|
||||
STR_5938 :{WINDOW_COLOUR_2}Water level: {BLACK}{COMMA16}
|
||||
STR_5938 :Water level: {BLACK}{COMMA16}
|
||||
STR_5939 :Remove park fences
|
||||
STR_5940 :Restore park fences
|
||||
STR_5941 :{WINDOW_COLOUR_2}Base height:
|
||||
STR_5942 :{WINDOW_COLOUR_2}Path name: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}Additions: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}Additions: {BLACK}None
|
||||
STR_5945 :{WINDOW_COLOUR_2}Connected edges:
|
||||
STR_5946 :{WINDOW_COLOUR_2}Ride type: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}Ride ID: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}Ride name: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}Chain lift
|
||||
STR_5950 :{WINDOW_COLOUR_2}Apply changes to entire track piece
|
||||
STR_5951 :{WINDOW_COLOUR_2}Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}Sequence number: {BLACK}{COMMA16}
|
||||
STR_5941 :Base height:
|
||||
STR_5942 :Path name: {BLACK}{STRINGID}
|
||||
STR_5943 :Additions: {BLACK}{STRINGID}
|
||||
STR_5944 :Additions: {BLACK}None
|
||||
STR_5945 :Connected edges:
|
||||
STR_5946 :Ride type: {BLACK}{STRINGID}
|
||||
STR_5947 :Ride ID: {BLACK}{COMMA16}
|
||||
STR_5948 :Ride name: {BLACK}{STRINGID}
|
||||
STR_5949 :Chain lift
|
||||
STR_5950 :Apply changes to entire track piece
|
||||
STR_5951 :Track piece ID: {BLACK}{COMMA16}
|
||||
STR_5952 :Sequence number: {BLACK}{COMMA16}
|
||||
STR_5953 :Sort the map elements on the current tile based on their base height.
|
||||
STR_5954 :{WINDOW_COLOUR_2}Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Quadrant placement: {BLACK}{STRINGID}
|
||||
STR_5954 :Scenery age: {BLACK}{COMMA16}
|
||||
STR_5955 :Quadrant placement: {BLACK}{STRINGID}
|
||||
STR_5956 :Southwest
|
||||
STR_5957 :Northwest
|
||||
STR_5958 :Northeast
|
||||
STR_5959 :Southeast
|
||||
STR_5960 :{WINDOW_COLOUR_2}Quadrant placement:
|
||||
STR_5961 :{WINDOW_COLOUR_2}Entry index: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}Collision detection:
|
||||
STR_5963 :{WINDOW_COLOUR_2}Raised Corners:
|
||||
STR_5964 :{WINDOW_COLOUR_2}Diagonal
|
||||
STR_5965 :{WINDOW_COLOUR_2}Entrance type: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}Park entrance part: {BLACK}{STRINGID}
|
||||
STR_5960 :Quadrant placement:
|
||||
STR_5961 :Entry index: {BLACK}{COMMA16}
|
||||
STR_5962 :Collision detection:
|
||||
STR_5963 :Raised Corners:
|
||||
STR_5964 :Diagonal
|
||||
STR_5965 :Entrance type: {BLACK}{STRINGID}
|
||||
STR_5966 :Park entrance part: {BLACK}{STRINGID}
|
||||
STR_5967 :Middle
|
||||
STR_5968 :Left
|
||||
STR_5969 :Right
|
||||
STR_5970 :{WINDOW_COLOUR_2}Entrance ID: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}Exit ID: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}Ride ID: {BLACK}{COMMA16}
|
||||
STR_5970 :Entrance ID: {BLACK}{COMMA16}
|
||||
STR_5971 :Exit ID: {BLACK}{COMMA16}
|
||||
STR_5972 :Ride ID: {BLACK}{COMMA16}
|
||||
STR_5973 :Clamp to next
|
||||
STR_5974 :Changes the base- and clearance height so that it’s at the same as the next element on the current tile. Doing this makes it easier to build on this tile.
|
||||
STR_5975 :Slope:
|
||||
STR_5976 :Flat
|
||||
STR_5977 :Right side up
|
||||
STR_5978 :Left side up
|
||||
STR_5979 :{WINDOW_COLOUR_2}Wall type: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}Banner text: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}Not a banner
|
||||
STR_5982 :{WINDOW_COLOUR_2}Large scenery type: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}Large scenery piece ID: {BLACK}{COMMA16}
|
||||
STR_5979 :Wall type: {BLACK}{COMMA16}
|
||||
STR_5980 :Banner text: {BLACK}{STRINGID}
|
||||
STR_5981 :Not a banner
|
||||
STR_5982 :Large scenery type: {BLACK}{COMMA16}
|
||||
STR_5983 :Large scenery piece ID: {BLACK}{COMMA16}
|
||||
STR_5984 :Blocked paths:
|
||||
STR_5985 :New folder
|
||||
STR_5986 :Type the name of the new folder.
|
||||
|
@ -3485,7 +3485,7 @@ STR_6273 :Music
|
|||
STR_6274 :Can’t set colour scheme…
|
||||
STR_6275 :{WINDOW_COLOUR_2}Station style:
|
||||
STR_6276 :{RED}{STRINGID} has guests getting stuck, possibly due to invalid ride type or operating mode.
|
||||
STR_6277 :{WINDOW_COLOUR_2}Station index: {BLACK}{STRINGID}
|
||||
STR_6277 :Station index: {BLACK}{STRINGID}
|
||||
STR_6278 :Autosave amount
|
||||
STR_6279 :Number of autosaves that should be kept
|
||||
STR_6280 :Chat
|
||||
|
@ -3518,9 +3518,9 @@ STR_6315 :{WINDOW_COLOUR_2}Pathfind Goal: {BLACK}{INT32}, {INT32}, {INT32} di
|
|||
STR_6316 :{WINDOW_COLOUR_2}Pathfind history:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} dir {INT32}
|
||||
STR_6318 :Network desync detected.{NEWLINE}Log file: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}Block Brake Closed
|
||||
STR_6320 :{WINDOW_COLOUR_2}Indestructible
|
||||
STR_6321 :{WINDOW_COLOUR_2}Addition is broken
|
||||
STR_6319 :Block Brake Closed
|
||||
STR_6320 :Indestructible
|
||||
STR_6321 :Addition is broken
|
||||
STR_6322 :{WINDOW_COLOUR_2}Sprite Id: {BLACK}{INT32}
|
||||
STR_6323 :Simulating
|
||||
STR_6324 :Simulate
|
||||
|
@ -3566,7 +3566,7 @@ STR_6363 :Copied text to clipboard
|
|||
STR_6364 :{RED}{COMMA16} person has died in an accident on {STRINGID}
|
||||
STR_6365 :Ride casualties
|
||||
STR_6366 :Stuck or stalled vehicles
|
||||
STR_6367 :{WINDOW_COLOUR_2}Animation frame:
|
||||
STR_6367 :Animation frame:
|
||||
STR_6368 :For compatibility reasons, it is not recommended to run OpenRCT2 with Wine. OpenRCT2 has native support for macOS, Linux, FreeBSD and OpenBSD.
|
||||
STR_6369 :Allow building track at invalid heights
|
||||
STR_6370 :Allows placing track pieces at any height interval
|
||||
|
|
|
@ -3169,56 +3169,56 @@ STR_5930 :巨型景物详情
|
|||
STR_5931 :横幅详情
|
||||
STR_5932 :已毁坏元素详情
|
||||
STR_5933 :属性
|
||||
STR_5934 :{WINDOW_COLOUR_2}地型素材:{BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}地型边缘:{BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}土地拥有权:{BLACK}{STRINGID}
|
||||
STR_5934 :地型素材:{BLACK}{STRINGID}
|
||||
STR_5935 :地型边缘:{BLACK}{STRINGID}
|
||||
STR_5936 :土地拥有权:{BLACK}{STRINGID}
|
||||
STR_5937 :未拥有且不可购买
|
||||
STR_5938 :{WINDOW_COLOUR_2}水位:{BLACK}{COMMA16}
|
||||
STR_5938 :水位:{BLACK}{COMMA16}
|
||||
STR_5939 :移除乐园边界
|
||||
STR_5940 :还原乐园边界
|
||||
STR_5941 :{WINDOW_COLOUR_2}地面高度:
|
||||
STR_5942 :{WINDOW_COLOUR_2}道路名称:{BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}附加物品:{BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}附加物品:{BLACK}暂无
|
||||
STR_5945 :{WINDOW_COLOUR_2}已连接的边缘:
|
||||
STR_5946 :{WINDOW_COLOUR_2}游乐设施种类:{BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}游乐设施ID:{BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}游乐设施名称:{BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}提升坡
|
||||
STR_5950 :{WINDOW_COLOUR_2}将改变应用于整个轨道组件中
|
||||
STR_5951 :{WINDOW_COLOUR_2}轨道组件ID:{BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}编号:{BLACK}{COMMA16}
|
||||
STR_5941 :地面高度:
|
||||
STR_5942 :道路名称:{BLACK}{STRINGID}
|
||||
STR_5943 :附加物品:{BLACK}{STRINGID}
|
||||
STR_5944 :附加物品:{BLACK}暂无
|
||||
STR_5945 :已连接的边缘:
|
||||
STR_5946 :游乐设施种类:{BLACK}{STRINGID}
|
||||
STR_5947 :游乐设施ID:{BLACK}{COMMA16}
|
||||
STR_5948 :游乐设施名称:{BLACK}{STRINGID}
|
||||
STR_5949 :提升坡
|
||||
STR_5950 :将改变应用于整个轨道组件中
|
||||
STR_5951 :轨道组件ID:{BLACK}{COMMA16}
|
||||
STR_5952 :编号:{BLACK}{COMMA16}
|
||||
STR_5953 :以底部高度排序目前网格上的地图元素
|
||||
STR_5954 :{WINDOW_COLOUR_2}景物年龄:{BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}四角放置:{BLACK}{STRINGID}
|
||||
STR_5954 :景物年龄:{BLACK}{COMMA16}
|
||||
STR_5955 :四角放置:{BLACK}{STRINGID}
|
||||
STR_5956 :西南
|
||||
STR_5957 :西北
|
||||
STR_5958 :东北
|
||||
STR_5959 :东南
|
||||
STR_5960 :{WINDOW_COLOUR_2}四角放置:
|
||||
STR_5961 :{WINDOW_COLOUR_2}入口编号:{BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}碰撞检测:
|
||||
STR_5963 :{WINDOW_COLOUR_2}已升起的角:
|
||||
STR_5964 :{WINDOW_COLOUR_2}斜角
|
||||
STR_5965 :{WINDOW_COLOUR_2}入口类型:{BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}游乐园入口部份:{BLACK}{STRINGID}
|
||||
STR_5960 :四角放置:
|
||||
STR_5961 :入口编号:{BLACK}{COMMA16}
|
||||
STR_5962 :碰撞检测:
|
||||
STR_5963 :已升起的角:
|
||||
STR_5964 :斜角
|
||||
STR_5965 :入口类型:{BLACK}{STRINGID}
|
||||
STR_5966 :游乐园入口部份:{BLACK}{STRINGID}
|
||||
STR_5967 :中间
|
||||
STR_5968 :左
|
||||
STR_5969 :右
|
||||
STR_5970 :{WINDOW_COLOUR_2}入口编号:{BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}出口编号:{BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}游乐设施编号:{BLACK}{COMMA16}
|
||||
STR_5970 :入口编号:{BLACK}{COMMA16}
|
||||
STR_5971 :出口编号:{BLACK}{COMMA16}
|
||||
STR_5972 :游乐设施编号:{BLACK}{COMMA16}
|
||||
STR_5973 :与下一地图元素并列
|
||||
STR_5974 :将此元素的基准和净高度与下一元素调整一致. 这可以让在网格上建造变得更加容易.
|
||||
STR_5975 :坡道:
|
||||
STR_5976 :平坦
|
||||
STR_5977 :右边向上
|
||||
STR_5978 :左边向上
|
||||
STR_5979 :{WINDOW_COLOUR_2}围栏类型:{BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}横幅文字:{BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}不是横幅
|
||||
STR_5982 :{WINDOW_COLOUR_2}巨型景物类型:{BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}巨型景物组件编号:{BLACK}{COMMA16}
|
||||
STR_5979 :围栏类型:{BLACK}{COMMA16}
|
||||
STR_5980 :横幅文字:{BLACK}{STRINGID}
|
||||
STR_5981 :不是横幅
|
||||
STR_5982 :巨型景物类型:{BLACK}{COMMA16}
|
||||
STR_5983 :巨型景物组件编号:{BLACK}{COMMA16}
|
||||
STR_5984 :被挡住的道路:
|
||||
STR_5985 :新建文件夹
|
||||
STR_5986 :请输入新文件夹的名字
|
||||
|
@ -3490,7 +3490,7 @@ STR_6273 :音乐
|
|||
STR_6274 :无法设置配色主题…
|
||||
STR_6275 :{WINDOW_COLOUR_2}车站类型:
|
||||
STR_6276 :{RED}{STRINGID} 有游客被困住了,这可能是因为无效的设施类型或者运行模式
|
||||
STR_6277 :{WINDOW_COLOUR_2}车站编号: {BLACK}{STRINGID}
|
||||
STR_6277 :车站编号: {BLACK}{STRINGID}
|
||||
STR_6278 :自动保存数量
|
||||
STR_6279 :应该保留的自动保存数量
|
||||
STR_6293 :B
|
||||
|
|
|
@ -3167,56 +3167,56 @@ STR_5930 :巨型景物詳情
|
|||
STR_5931 :橫額詳情
|
||||
STR_5932 :已毀壞元素詳情
|
||||
STR_5933 :屬性
|
||||
STR_5934 :{WINDOW_COLOUR_2}地型素材: {BLACK}{STRINGID}
|
||||
STR_5935 :{WINDOW_COLOUR_2}地型邊緣: {BLACK}{STRINGID}
|
||||
STR_5936 :{WINDOW_COLOUR_2}土地擁有權: {BLACK}{STRINGID}
|
||||
STR_5934 :地型素材: {BLACK}{STRINGID}
|
||||
STR_5935 :地型邊緣: {BLACK}{STRINGID}
|
||||
STR_5936 :土地擁有權: {BLACK}{STRINGID}
|
||||
STR_5937 :並未擁有亦並不可買
|
||||
STR_5938 :{WINDOW_COLOUR_2}水位: {BLACK}{COMMA16}
|
||||
STR_5938 :水位: {BLACK}{COMMA16}
|
||||
STR_5939 :移除樂園邊界
|
||||
STR_5940 :還原樂園邊界
|
||||
STR_5941 :{WINDOW_COLOUR_2}地面高度:
|
||||
STR_5942 :{WINDOW_COLOUR_2}道路名稱: {BLACK}{STRINGID}
|
||||
STR_5943 :{WINDOW_COLOUR_2}附加物品: {BLACK}{STRINGID}
|
||||
STR_5944 :{WINDOW_COLOUR_2}附加物品: {BLACK}暫無
|
||||
STR_5945 :{WINDOW_COLOUR_2}已連接的邊緣:
|
||||
STR_5946 :{WINDOW_COLOUR_2}遊樂設施種類: {BLACK}{STRINGID}
|
||||
STR_5947 :{WINDOW_COLOUR_2}遊樂設施編號: {BLACK}{COMMA16}
|
||||
STR_5948 :{WINDOW_COLOUR_2}遊樂設施名稱: {BLACK}{STRINGID}
|
||||
STR_5949 :{WINDOW_COLOUR_2}鏈條坡道
|
||||
STR_5950 :{WINDOW_COLOUR_2}將改變應用於整個軌道組件中
|
||||
STR_5951 :{WINDOW_COLOUR_2}軌道組件編號: {BLACK}{COMMA16}
|
||||
STR_5952 :{WINDOW_COLOUR_2}次序數目: {BLACK}{COMMA16}
|
||||
STR_5941 :地面高度:
|
||||
STR_5942 :道路名稱: {BLACK}{STRINGID}
|
||||
STR_5943 :附加物品: {BLACK}{STRINGID}
|
||||
STR_5944 :附加物品: {BLACK}暫無
|
||||
STR_5945 :已連接的邊緣:
|
||||
STR_5946 :遊樂設施種類: {BLACK}{STRINGID}
|
||||
STR_5947 :遊樂設施編號: {BLACK}{COMMA16}
|
||||
STR_5948 :遊樂設施名稱: {BLACK}{STRINGID}
|
||||
STR_5949 :鏈條坡道
|
||||
STR_5950 :將改變應用於整個軌道組件中
|
||||
STR_5951 :軌道組件編號: {BLACK}{COMMA16}
|
||||
STR_5952 :次序數目: {BLACK}{COMMA16}
|
||||
STR_5953 :以底部高度排序目前網格上的地圖元素
|
||||
STR_5954 :{WINDOW_COLOUR_2}景物年齡: {BLACK}{COMMA16}
|
||||
STR_5955 :{WINDOW_COLOUR_2}Quadrant放置: {BLACK}{STRINGID}
|
||||
STR_5954 :景物年齡: {BLACK}{COMMA16}
|
||||
STR_5955 :Quadrant放置: {BLACK}{STRINGID}
|
||||
STR_5956 :西南
|
||||
STR_5957 :西北
|
||||
STR_5958 :東北
|
||||
STR_5959 :東南
|
||||
STR_5960 :{WINDOW_COLOUR_2}Quadrant放置:
|
||||
STR_5961 :{WINDOW_COLOUR_2}入口編號: {BLACK}{COMMA16}
|
||||
STR_5962 :{WINDOW_COLOUR_2}衝突檢測:
|
||||
STR_5963 :{WINDOW_COLOUR_2}已升起的角落:
|
||||
STR_5964 :{WINDOW_COLOUR_2}斜角
|
||||
STR_5965 :{WINDOW_COLOUR_2}入口類型: {BLACK}{STRINGID}
|
||||
STR_5966 :{WINDOW_COLOUR_2}樂園入口部份: {BLACK}{STRINGID}
|
||||
STR_5960 :Quadrant放置:
|
||||
STR_5961 :入口編號: {BLACK}{COMMA16}
|
||||
STR_5962 :衝突檢測:
|
||||
STR_5963 :已升起的角落:
|
||||
STR_5964 :斜角
|
||||
STR_5965 :入口類型: {BLACK}{STRINGID}
|
||||
STR_5966 :樂園入口部份: {BLACK}{STRINGID}
|
||||
STR_5967 :中間
|
||||
STR_5968 :左
|
||||
STR_5969 :右
|
||||
STR_5970 :{WINDOW_COLOUR_2}入口編號: {BLACK}{COMMA16}
|
||||
STR_5971 :{WINDOW_COLOUR_2}出口編號: {BLACK}{COMMA16}
|
||||
STR_5972 :{WINDOW_COLOUR_2}遊樂設施編號: {BLACK}{COMMA16}
|
||||
STR_5970 :入口編號: {BLACK}{COMMA16}
|
||||
STR_5971 :出口編號: {BLACK}{COMMA16}
|
||||
STR_5972 :遊樂設施編號: {BLACK}{COMMA16}
|
||||
STR_5973 :與下一地圖元素並列
|
||||
STR_5974 :將此元素的底部及清空高度與下一元素調整成一致. 此舉會讓於此網格上建造得更加容易.
|
||||
STR_5975 :坡道:
|
||||
STR_5976 :平坦
|
||||
STR_5977 :右邊向上
|
||||
STR_5978 :左邊向上
|
||||
STR_5979 :{WINDOW_COLOUR_2}圍欄類型: {BLACK}{COMMA16}
|
||||
STR_5980 :{WINDOW_COLOUR_2}橫額文字: {BLACK}{STRINGID}
|
||||
STR_5981 :{WINDOW_COLOUR_2}不是橫額
|
||||
STR_5982 :{WINDOW_COLOUR_2}巨型景物類型: {BLACK}{COMMA16}
|
||||
STR_5983 :{WINDOW_COLOUR_2}巨型景物組件編號: {BLACK}{COMMA16}
|
||||
STR_5979 :圍欄類型: {BLACK}{COMMA16}
|
||||
STR_5980 :橫額文字: {BLACK}{STRINGID}
|
||||
STR_5981 :不是橫額
|
||||
STR_5982 :巨型景物類型: {BLACK}{COMMA16}
|
||||
STR_5983 :巨型景物組件編號: {BLACK}{COMMA16}
|
||||
STR_5984 :被擋住的道路:
|
||||
STR_5985 :建立新文件夾
|
||||
STR_5986 :請輸入新文件夾的名字
|
||||
|
@ -3491,7 +3491,7 @@ STR_6273 :音樂
|
|||
STR_6274 :無法設置色彩選配…
|
||||
STR_6275 :{WINDOW_COLOUR_2}車站風格:
|
||||
STR_6276 :{RED}有遊客於{STRINGID}中卡住, 可能因為使用了非法的遊樂設施種類或運作模式.
|
||||
STR_6277 :{WINDOW_COLOUR_2}車站索引: {BLACK}{COMMA16}
|
||||
STR_6277 :車站索引: {BLACK}{COMMA16}
|
||||
STR_6278 :自動存檔數量
|
||||
STR_6279 :設置該保留的自動存檔數量
|
||||
STR_6280 :聊天
|
||||
|
@ -3524,9 +3524,9 @@ STR_6315 :{WINDOW_COLOUR_2}尋路目標: {BLACK}{INT32}, {INT32}, {INT32} 方
|
|||
STR_6316 :{WINDOW_COLOUR_2}尋路歷史:
|
||||
STR_6317 :{BLACK}{INT32}, {INT32}, {INT32} 方向 {INT32}
|
||||
STR_6318 :檢測到網絡不同步.{NEWLINE}記錄檔: {STRING}
|
||||
STR_6319 :{WINDOW_COLOUR_2}關閉區域煞車
|
||||
STR_6320 :{WINDOW_COLOUR_2}永不損壞
|
||||
STR_6321 :{WINDOW_COLOUR_2}附加物品已損壞
|
||||
STR_6319 :關閉區域煞車
|
||||
STR_6320 :永不損壞
|
||||
STR_6321 :附加物品已損壞
|
||||
STR_6322 :{WINDOW_COLOUR_2}元素ID: {BLACK}{INT32}
|
||||
STR_6323 :模擬運作中
|
||||
STR_6324 :模擬
|
||||
|
@ -3572,7 +3572,7 @@ STR_6363 :複製文字到剪貼簿
|
|||
STR_6364 :{RED}{COMMA16}人已於{STRINGID}的意外中喪生
|
||||
STR_6365 :於遊樂設施中發生的傷亡
|
||||
STR_6366 :卡住或被停止了的車輛
|
||||
STR_6367 :{WINDOW_COLOUR_2}動畫影格:
|
||||
STR_6367 :動畫影格:
|
||||
STR_6368 :因為兼容性原因, 不建議以Wine上運行OpenRCT2. OpenRCT2能原生支援macOS, Linux, FreeBSD及OpenBSD.
|
||||
STR_6369 :允許在不合理的高度上建造軌道
|
||||
STR_6370 :{SMALLFONT}{BLACK}允許在任何高度上放置軌道選項
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -392,9 +392,10 @@ namespace OpenRCT2::Ui
|
|||
{
|
||||
filtersb << ' ';
|
||||
}
|
||||
else if (isalpha(c))
|
||||
else if (isalpha(static_cast<unsigned char>(c)))
|
||||
{
|
||||
filtersb << '[' << static_cast<char>(tolower(c)) << static_cast<char>(toupper(c)) << ']';
|
||||
auto uc = static_cast<unsigned char>(c);
|
||||
filtersb << '[' << static_cast<char>(tolower(uc)) << static_cast<char>(toupper(uc)) << ']';
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -385,7 +385,7 @@ private:
|
|||
{
|
||||
ReadCentrePixel(&_pixelAfterOverlay);
|
||||
|
||||
// Detect an active Steam overlay by checking if the centre pixel is changed by the gray fade.
|
||||
// Detect an active Steam overlay by checking if the centre pixel is changed by the grey fade.
|
||||
// Will not be triggered by applications rendering to corners, like FRAPS, MSI Afterburner and Friends popups.
|
||||
bool newOverlayActive = _pixelBeforeOverlay != _pixelAfterOverlay;
|
||||
|
||||
|
|
|
@ -148,7 +148,7 @@ validate_global_widx(WC_EDITOR_OBJECT_SELECTION, WIDX_TAB_1);
|
|||
static bool _window_editor_object_selection_widgets_initialised;
|
||||
static std::vector<rct_widget> _window_editor_object_selection_widgets = {
|
||||
WINDOW_SHIM(WINDOW_TITLE, WW, WH),
|
||||
MakeWidget({ 0, 43}, {600, 357}, WindowWidgetType::Resize, WindowColour::Secondary ),
|
||||
MakeWidget({ 0, 43}, {WW, 357}, WindowWidgetType::Resize, WindowColour::Secondary ),
|
||||
MakeWidget({470, 22}, {122, 14}, WindowWidgetType::Button, WindowColour::Primary, STR_OBJECT_SELECTION_ADVANCED, STR_OBJECT_SELECTION_ADVANCED_TIP),
|
||||
MakeWidget({ 4, 60}, {288, 327}, WindowWidgetType::Scroll, WindowColour::Secondary, SCROLL_VERTICAL ),
|
||||
MakeWidget({391, 45}, {114, 115}, WindowWidgetType::FlatBtn, WindowColour::Secondary ),
|
||||
|
@ -384,7 +384,7 @@ rct_window* window_editor_object_selection_open()
|
|||
reset_selected_object_count_and_size();
|
||||
|
||||
window = WindowCreateCentred(
|
||||
600, 400, &window_editor_object_selection_events, WC_EDITOR_OBJECT_SELECTION, WF_10 | WF_RESIZABLE);
|
||||
WW, WH, &window_editor_object_selection_events, WC_EDITOR_OBJECT_SELECTION, WF_10 | WF_RESIZABLE);
|
||||
window->widgets = _window_editor_object_selection_widgets.data();
|
||||
window->widgets[WIDX_FILTER_TEXT_BOX].string = _filter_string;
|
||||
|
||||
|
@ -404,8 +404,8 @@ rct_window* window_editor_object_selection_open()
|
|||
window->selected_tab = 0;
|
||||
window->selected_list_item = -1;
|
||||
window->object_entry = nullptr;
|
||||
window->min_width = 600;
|
||||
window->min_height = 400;
|
||||
window->min_width = WW;
|
||||
window->min_height = WH;
|
||||
window->max_width = 1200;
|
||||
window->max_height = 1000;
|
||||
|
||||
|
@ -566,7 +566,7 @@ static void window_editor_object_selection_mouseup(rct_window* w, rct_widgetinde
|
|||
|
||||
static void window_editor_object_selection_resize(rct_window* w)
|
||||
{
|
||||
window_set_resize(w, 600, 400, 1200, 1000);
|
||||
window_set_resize(w, WW, WH, 1200, 1000);
|
||||
}
|
||||
|
||||
void window_editor_object_selection_mousedown(rct_window* w, rct_widgetindex widgetIndex, rct_widget* widget)
|
||||
|
@ -886,8 +886,8 @@ static void window_editor_object_selection_invalidate(rct_window* w)
|
|||
}
|
||||
|
||||
w->widgets[WIDX_FILTER_DROPDOWN].type = WindowWidgetType::Button;
|
||||
w->widgets[WIDX_LIST].right = w->width - (600 - 587) - x;
|
||||
w->widgets[WIDX_PREVIEW].left = w->width - (600 - 537) - (x / 2);
|
||||
w->widgets[WIDX_LIST].right = w->width - (WW - 587) - x;
|
||||
w->widgets[WIDX_PREVIEW].left = w->width - (WW - 537) - (x / 2);
|
||||
w->widgets[WIDX_PREVIEW].right = w->widgets[WIDX_PREVIEW].left + 113;
|
||||
w->widgets[WIDX_FILTER_RIDE_TAB_FRAME].right = w->widgets[WIDX_LIST].right;
|
||||
|
||||
|
@ -1485,30 +1485,16 @@ static bool filter_string(const ObjectRepositoryItem* item)
|
|||
// Get ride type
|
||||
const char* rideTypeName = language_get_string(get_ride_type_string_id(item));
|
||||
|
||||
// Get object name (ride/vehicle for rides) and type name (rides only)
|
||||
char name_lower[MAX_PATH];
|
||||
char type_lower[MAX_PATH];
|
||||
char object_path[MAX_PATH];
|
||||
char filter_lower[sizeof(_filter_string)];
|
||||
safe_strcpy(name_lower, item->Name.c_str(), MAX_PATH);
|
||||
safe_strcpy(type_lower, rideTypeName, MAX_PATH);
|
||||
safe_strcpy(object_path, item->Path.c_str(), MAX_PATH);
|
||||
safe_strcpy(filter_lower, _filter_string, sizeof(_filter_string));
|
||||
|
||||
// Make use of lowercase characters only
|
||||
for (int32_t i = 0; name_lower[i] != '\0'; i++)
|
||||
name_lower[i] = static_cast<char>(tolower(name_lower[i]));
|
||||
for (int32_t i = 0; type_lower[i] != '\0'; i++)
|
||||
type_lower[i] = static_cast<char>(tolower(type_lower[i]));
|
||||
for (int32_t i = 0; object_path[i] != '\0'; i++)
|
||||
object_path[i] = static_cast<char>(tolower(object_path[i]));
|
||||
for (int32_t i = 0; filter_lower[i] != '\0'; i++)
|
||||
filter_lower[i] = static_cast<char>(tolower(filter_lower[i]));
|
||||
// Get object name (ride/vehicle for rides) and type name (rides only) in uppercase
|
||||
const auto nameUpper = String::ToUpper(item->Name);
|
||||
const auto typeUpper = String::ToUpper(rideTypeName);
|
||||
const auto pathUpper = String::ToUpper(item->Path);
|
||||
const auto filterUpper = String::ToUpper(_filter_string);
|
||||
|
||||
// Check if the searched string exists in the name, ride type, or filename
|
||||
bool inName = strstr(name_lower, filter_lower) != nullptr;
|
||||
bool inRideType = (item->ObjectEntry.GetType() == ObjectType::Ride) && strstr(type_lower, filter_lower) != nullptr;
|
||||
bool inPath = strstr(object_path, filter_lower) != nullptr;
|
||||
bool inName = nameUpper.find(filterUpper) != std::string::npos;
|
||||
bool inRideType = (item->ObjectEntry.GetType() == ObjectType::Ride) && typeUpper.find(filterUpper) != std::string::npos;
|
||||
bool inPath = pathUpper.find(filterUpper) != std::string::npos;
|
||||
|
||||
return inName || inRideType || inPath;
|
||||
}
|
||||
|
|
|
@ -81,7 +81,7 @@ static void window_install_track_design(rct_window* w);
|
|||
*/
|
||||
rct_window* window_install_track_open(const utf8* path)
|
||||
{
|
||||
_trackDesign = track_design_open(path);
|
||||
_trackDesign = TrackDesignImport(path);
|
||||
if (_trackDesign == nullptr)
|
||||
{
|
||||
context_show_error(STR_UNABLE_TO_LOAD_FILE, STR_NONE, {});
|
||||
|
@ -422,7 +422,7 @@ static void window_install_track_text_input(rct_window* w, rct_widgetindex widge
|
|||
|
||||
static void window_install_track_update_preview()
|
||||
{
|
||||
track_design_draw_preview(_trackDesign.get(), _trackDesignPreviewPixels.data());
|
||||
TrackDesignDrawPreview(_trackDesign.get(), _trackDesignPreviewPixels.data());
|
||||
}
|
||||
|
||||
static void window_install_track_design(rct_window* w)
|
||||
|
|
|
@ -1394,7 +1394,13 @@ rct_window* window_ride_open_track(TileElement* tileElement)
|
|||
*/
|
||||
rct_window* window_ride_open_vehicle(Vehicle* vehicle)
|
||||
{
|
||||
if (vehicle == nullptr)
|
||||
return nullptr;
|
||||
|
||||
Vehicle* headVehicle = vehicle->TrainHead();
|
||||
if (headVehicle == nullptr)
|
||||
return nullptr;
|
||||
|
||||
uint16_t headVehicleSpriteIndex = headVehicle->sprite_index;
|
||||
auto ride = headVehicle->GetRide();
|
||||
if (ride == nullptr)
|
||||
|
@ -2832,10 +2838,10 @@ static OpenRCT2String window_ride_vehicle_tooltip(
|
|||
|
||||
auto ft = Formatter();
|
||||
ft.Increment(16);
|
||||
ft.Add<uint16_t>(std::max(uint8_t(1), ride->GetMaxCarsPerTrain()) - rideEntry->zero_cars);
|
||||
ft.Add<uint16_t>(std::max(uint8_t(1), ride->MaxCarsPerTrain) - rideEntry->zero_cars);
|
||||
|
||||
rct_string_id stringId = GetRideComponentName(RideComponentType::Car).singular;
|
||||
if (ride->GetMaxCarsPerTrain() - rideEntry->zero_cars > 1)
|
||||
if (ride->MaxCarsPerTrain - rideEntry->zero_cars > 1)
|
||||
{
|
||||
stringId = GetRideComponentName(RideComponentType::Car).plural;
|
||||
}
|
||||
|
@ -5325,7 +5331,8 @@ static void window_ride_measurements_design_save(rct_window* w)
|
|||
|
||||
if (gTrackDesignSaveMode)
|
||||
{
|
||||
auto errMessage = _trackDesign->CreateTrackDesignScenery();
|
||||
TrackDesignState tds{};
|
||||
auto errMessage = _trackDesign->CreateTrackDesignScenery(tds);
|
||||
if (errMessage != STR_NONE)
|
||||
{
|
||||
context_show_error(STR_CANT_SAVE_TRACK_DESIGN, errMessage, {});
|
||||
|
@ -6213,7 +6220,7 @@ static void window_ride_graphs_scrollpaint(rct_window* w, rct_drawpixelinfo* dpi
|
|||
|
||||
const bool previousMeasurement = x > measurement->current_item;
|
||||
|
||||
// Draw the current line in gray.
|
||||
// Draw the current line in grey.
|
||||
gfx_fill_rect(dpi, { { x, top }, { x, bottom } }, previousMeasurement ? PALETTE_INDEX_17 : PALETTE_INDEX_21);
|
||||
|
||||
// Draw red over extreme values (if supported by graph type).
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -76,6 +76,7 @@ enum WINDOW_TILE_INSPECTOR_WIDGET_IDX
|
|||
WIDX_COLUMN_TYPE,
|
||||
WIDX_COLUMN_BASEHEIGHT,
|
||||
WIDX_COLUMN_CLEARANCEHEIGHT,
|
||||
WIDX_COLUMN_DIRECTION,
|
||||
WIDX_COLUMN_GHOSTFLAG,
|
||||
WIDX_COLUMN_LASTFLAG,
|
||||
WIDX_GROUPBOX_DETAILS,
|
||||
|
@ -180,199 +181,207 @@ constexpr int32_t MIN_WH = 130;
|
|||
constexpr int32_t MAX_WH = 800;
|
||||
|
||||
// Button space for top buttons
|
||||
constexpr int32_t BW = WW - 5; // Button's right side
|
||||
constexpr int32_t BX = BW - 23; // Button's left side
|
||||
constexpr int32_t BY = 17; // Button's Top
|
||||
constexpr int32_t BH = BY + 23; // Button's Bottom
|
||||
constexpr int32_t BS = 24;
|
||||
constexpr auto ToolbarButtonAnchor = ScreenCoordsXY{ WW - 27, 17 };
|
||||
constexpr auto ToolbarButtonSize = ScreenSize{ 24, 24 };
|
||||
constexpr auto ToolbarButtonHalfSize = ScreenSize{ 24, 12 };
|
||||
constexpr auto ToolbarButtonOffsetX = ScreenSize{ -24, 0 };
|
||||
|
||||
// Column offsets for the table headers
|
||||
constexpr int32_t COL_X_TYPE = 3; // Type
|
||||
constexpr int32_t COL_X_BH = COL_X_TYPE + 312; // Base height
|
||||
constexpr int32_t COL_X_CH = COL_X_BH + 20; // Clearance height
|
||||
constexpr int32_t COL_X_GF = COL_X_CH + 20; // Ghost flag
|
||||
constexpr int32_t COL_X_LF = COL_X_GF + 12; // Last for tile flag
|
||||
// List's column offsets
|
||||
constexpr auto TypeColumnXY = ScreenCoordsXY{ 3, 42 };
|
||||
constexpr auto TypeColumnSize = ScreenSize{ 272, 14 };
|
||||
constexpr auto BaseHeightColumnXY = TypeColumnXY + ScreenSize{ TypeColumnSize.width, 0 };
|
||||
constexpr auto BaseHeightColumnSize = ScreenSize{ 30, 14 };
|
||||
constexpr auto ClearanceHeightColumnXY = BaseHeightColumnXY + ScreenCoordsXY{ BaseHeightColumnSize.width, 0 };
|
||||
constexpr auto ClearanceHeightColumnSize = ScreenSize{ 30, 14 };
|
||||
constexpr auto DirectionColumnXY = ClearanceHeightColumnXY + ScreenCoordsXY{ ClearanceHeightColumnSize.width, 0 };
|
||||
constexpr auto DirectionColumnSize = ScreenSize{ 15, 14 };
|
||||
constexpr auto GhostFlagColumnXY = DirectionColumnXY + ScreenCoordsXY{ DirectionColumnSize.width, 0 };
|
||||
constexpr auto GhostFlagColumnSize = ScreenSize{ 15, 14 };
|
||||
constexpr auto LastFlagColumnXY = GhostFlagColumnXY + ScreenCoordsXY{ GhostFlagColumnSize.width, 0 };
|
||||
constexpr auto LastFlagColumnSize = ScreenSize{ 32, 14 };
|
||||
|
||||
constexpr int32_t PADDING_BOTTOM = 15;
|
||||
constexpr int32_t GROUPBOX_PADDING = 6;
|
||||
constexpr int32_t HORIZONTAL_GROUPBOX_PADDING = 5;
|
||||
constexpr int32_t VERTICAL_GROUPBOX_PADDING = 4;
|
||||
constexpr int32_t BUTTONW = 130;
|
||||
constexpr int32_t BUTTONH = 17;
|
||||
constexpr auto PropertyButtonSize = ScreenSize{ 130, 18 };
|
||||
constexpr auto PropertyFullWidth = ScreenSize{ 370, 18 };
|
||||
|
||||
constexpr ScreenCoordsXY PropertyRowCol(ScreenCoordsXY anchor, int32_t row, int32_t column)
|
||||
{
|
||||
return anchor
|
||||
+ ScreenCoordsXY{ column * (PropertyButtonSize.width + HORIZONTAL_GROUPBOX_PADDING),
|
||||
row * (PropertyButtonSize.height + VERTICAL_GROUPBOX_PADDING) };
|
||||
}
|
||||
|
||||
constexpr ScreenCoordsXY CheckboxGroupOffset(
|
||||
ScreenCoordsXY anchorPoint, int16_t horizontalMultiplier, int16_t verticalMultiplier)
|
||||
{
|
||||
return anchorPoint + ScreenCoordsXY{ 14 * horizontalMultiplier, 7 * verticalMultiplier };
|
||||
}
|
||||
|
||||
// clang-format off
|
||||
// Calculates the .left, .right, .top and .bottom for buttons in a group box.
|
||||
// Buttons are used as reference points for all other widgets in the group boxes.
|
||||
#define GBBL(col) (12 + col * (BUTTONW + HORIZONTAL_GROUPBOX_PADDING))
|
||||
#define GBBR(col) (GBBL(col) + BUTTONW)
|
||||
#define GBBT(GROUPTOP, row) ((GROUPTOP) + 14 + row * (BUTTONH + VERTICAL_GROUPBOX_PADDING))
|
||||
#define GBBB(GROUPTOP, row) (GBBT((GROUPTOP), row) + BUTTONH)
|
||||
#define GBB(GROUPTOP, col, row) GBBL(col), GBBR(col), GBBT((GROUPTOP), row), GBBB((GROUPTOP), row)
|
||||
#define GBBF(GROUPTOP, col, row)GBBL(col), WW - 10, GBBT((GROUPTOP), row), GBBB((GROUPTOP), row) // Full width
|
||||
|
||||
// Dropdowns use the buttons as a reference
|
||||
#define GBD(GBT, col, row) GBBL(col), GBBR(col), GBBT(GBT, row) + 3, GBBB(GBT, row) - 3 // Group box dropdown field
|
||||
#define GBDB(GBT, col, row) GBBR(col) - 11, GBBR(col) - 1, GBBT(GBT, row) + 4, GBBB(GBT, row) - 4 // Group box dropdown button
|
||||
|
||||
// Checkbox - given topleft corner
|
||||
#define CHK(x, y) x, x + 13, y + 2, y + 15
|
||||
// Macros for easily obtaining the top and bottom of a widget inside a properties group box
|
||||
#define GBBT(GROUPTOP, row) ((GROUPTOP) + 14 + row * (PropertyButtonSize.height + VERTICAL_GROUPBOX_PADDING))
|
||||
#define GBBB(GROUPTOP, row) (GBBT((GROUPTOP), row) + PropertyButtonSize.height)
|
||||
|
||||
#define MAIN_TILE_INSPECTOR_WIDGETS \
|
||||
WINDOW_SHIM(WINDOW_TITLE, WW, WH), \
|
||||
{ WindowWidgetType::Scroll, 1, 3, WW - 4, 57, WH - PADDING_BOTTOM, 2, STR_NONE }, /* Element list */ \
|
||||
SPINNER_WIDGETS (1, 20, 70, 23, 34, STR_NONE, STR_NONE), /* Spinner X (3 widgets) */ \
|
||||
SPINNER_WIDGETS (1, 90, 140, 23, 34, STR_NONE, STR_NONE), /* Spinner Y (3 widgets) */ \
|
||||
/* Buttons */ \
|
||||
{ WindowWidgetType::FlatBtn, 1, BX, BW, BY, BH, SPR_MAP, STR_INSERT_CORRUPT_TIP }, /* Insert corrupt button */ \
|
||||
{ WindowWidgetType::FlatBtn, 1, BX - BS * 1, BW - BS * 1, BY, BH, SPR_DEMOLISH, STR_REMOVE_SELECTED_ELEMENT_TIP }, /* Remove button */ \
|
||||
{ WindowWidgetType::Button, 1, BX - BS * 2, BW - BS * 2, BY, BY + 11, STR_UP, STR_MOVE_SELECTED_ELEMENT_UP_TIP }, /* Move up */ \
|
||||
{ WindowWidgetType::Button, 1, BX - BS * 2, BW - BS * 2, BH - 11, BH, STR_DOWN, STR_MOVE_SELECTED_ELEMENT_DOWN_TIP }, /* Move down */ \
|
||||
{ WindowWidgetType::FlatBtn, 1, BX - BS * 3, BW - BS * 3, BY, BH, SPR_ROTATE_ARROW, STR_ROTATE_SELECTED_ELEMENT_TIP }, /* Rotate button */ \
|
||||
{ WindowWidgetType::FlatBtn, 1, BX - BS * 4, BW - BS * 4, BY, BH, SPR_G2_SORT, STR_TILE_INSPECTOR_SORT_TIP }, /* Sort button */ \
|
||||
{ WindowWidgetType::FlatBtn, 1, BX - BS * 5, BW - BS * 5, BY, BH, SPR_G2_PASTE, STR_TILE_INSPECTOR_PASTE_TIP }, /* Paste button */ \
|
||||
{ WindowWidgetType::FlatBtn, 1, BX - BS * 6, BW - BS * 6, BY, BH, SPR_G2_COPY, STR_TILE_INSPECTOR_COPY_TIP }, /* Copy button */ \
|
||||
/* Column headers */ \
|
||||
{ WindowWidgetType::TableHeader, 1, COL_X_TYPE, COL_X_BH - 1, 42, 42 + 13, STR_NONE, STR_NONE }, /* Type */ \
|
||||
{ WindowWidgetType::TableHeader, 1, COL_X_BH, COL_X_CH - 1, 42, 42 + 13, STR_NONE, STR_TILE_INSPECTOR_BASE_HEIGHT }, /* Base height */ \
|
||||
{ WindowWidgetType::TableHeader, 1, COL_X_CH, COL_X_GF - 1, 42, 42 + 13, STR_NONE, STR_TILE_INSPECTOR_CLEARANCE_HEIGHT }, /* Clearance height */ \
|
||||
{ WindowWidgetType::TableHeader, 1, COL_X_GF, COL_X_LF - 1, 42, 42 + 13, STR_NONE, STR_TILE_INSPECTOR_FLAG_GHOST }, /* Ghost flag */ \
|
||||
{ WindowWidgetType::TableHeader, 1, COL_X_LF, WW - 3, 42, 42 + 13, STR_NONE, STR_TILE_INSPECTOR_FLAG_LAST }, /* Last of tile flag */ \
|
||||
{ WindowWidgetType::Groupbox, 1, 6, WW - 6, -1, -1, STR_NONE, STR_NONE }, /* Details group box */ \
|
||||
{ WindowWidgetType::Groupbox, 1, 6, WW - 6, -1, -1, STR_TILE_INSPECTOR_GROUPBOX_PROPERTIES, STR_NONE } /* Properties group box */
|
||||
MakeWidget({3, 57}, {WW - 6, WH - PADDING_BOTTOM - 58}, WindowWidgetType::Scroll, WindowColour::Secondary, SCROLL_VERTICAL), /* Element list */ \
|
||||
/* X and Y spinners */ \
|
||||
MakeSpinnerWidgets({20, 23}, {51, 12}, WindowWidgetType::Spinner, WindowColour::Secondary), /* Spinner X (3 widgets) */ \
|
||||
MakeSpinnerWidgets({90, 23}, {51, 12}, WindowWidgetType::Spinner, WindowColour::Secondary), /* Spinner Y (3 widgets) */ \
|
||||
/* Top buttons */ \
|
||||
MakeWidget(ToolbarButtonAnchor, ToolbarButtonSize, WindowWidgetType::FlatBtn , WindowColour::Secondary, SPR_MAP, STR_INSERT_CORRUPT_TIP), /* Insert corrupt button */ \
|
||||
MakeWidget(ToolbarButtonAnchor + ToolbarButtonOffsetX * 1, ToolbarButtonSize, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_DEMOLISH, STR_REMOVE_SELECTED_ELEMENT_TIP ), /* Remove button */ \
|
||||
MakeWidget(ToolbarButtonAnchor + ToolbarButtonOffsetX * 2, ToolbarButtonHalfSize, WindowWidgetType::Button, WindowColour::Secondary, STR_UP, STR_MOVE_SELECTED_ELEMENT_UP_TIP), /* Move up */ \
|
||||
MakeWidget(ToolbarButtonAnchor + ToolbarButtonOffsetX * 2 + ScreenSize{0, 12}, ToolbarButtonHalfSize, WindowWidgetType::Button, WindowColour::Secondary, STR_DOWN, STR_MOVE_SELECTED_ELEMENT_DOWN_TIP), /* Move down */ \
|
||||
MakeWidget(ToolbarButtonAnchor + ToolbarButtonOffsetX * 3, ToolbarButtonSize, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_ROTATE_ARROW, STR_ROTATE_SELECTED_ELEMENT_TIP), /* Rotate button */ \
|
||||
MakeWidget(ToolbarButtonAnchor + ToolbarButtonOffsetX * 4, ToolbarButtonSize, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_SORT, STR_TILE_INSPECTOR_SORT_TIP), /* Sort button */ \
|
||||
MakeWidget(ToolbarButtonAnchor + ToolbarButtonOffsetX * 5, ToolbarButtonSize, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_PASTE, STR_TILE_INSPECTOR_PASTE_TIP), /* Paste button */ \
|
||||
MakeWidget(ToolbarButtonAnchor + ToolbarButtonOffsetX * 6, ToolbarButtonSize, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_COPY, STR_TILE_INSPECTOR_COPY_TIP), /* Copy button */ \
|
||||
/* Column headers */ \
|
||||
MakeWidget(TypeColumnXY, TypeColumnSize, WindowWidgetType::TableHeader, WindowColour::Secondary, STR_TILE_INSPECTOR_ELEMENT_TYPE), /* Type */ \
|
||||
MakeWidget(BaseHeightColumnXY, BaseHeightColumnSize, WindowWidgetType::TableHeader, WindowColour::Secondary, STR_TILE_INSPECTOR_BASE_HEIGHT_SHORT, STR_TILE_INSPECTOR_BASE_HEIGHT), /* Base height */ \
|
||||
MakeWidget(ClearanceHeightColumnXY, ClearanceHeightColumnSize, WindowWidgetType::TableHeader, WindowColour::Secondary, STR_TILE_INSPECTOR_CLEARANGE_HEIGHT_SHORT, STR_TILE_INSPECTOR_CLEARANCE_HEIGHT), /* Clearance height */ \
|
||||
MakeWidget(DirectionColumnXY, DirectionColumnSize, WindowWidgetType::TableHeader, WindowColour::Secondary, STR_TILE_INSPECTOR_DIRECTION_SHORT, STR_TILE_INSPECTOR_DIRECTION), /* Direction */ \
|
||||
MakeWidget(GhostFlagColumnXY, GhostFlagColumnSize, WindowWidgetType::TableHeader, WindowColour::Secondary, STR_TILE_INSPECTOR_FLAG_GHOST_SHORT, STR_TILE_INSPECTOR_FLAG_GHOST), /* Ghost flag */ \
|
||||
MakeWidget(LastFlagColumnXY, LastFlagColumnSize, WindowWidgetType::TableHeader, WindowColour::Secondary, STR_TILE_INSPECTOR_FLAG_LAST_SHORT, STR_TILE_INSPECTOR_FLAG_LAST), /* Last of tile flag */ \
|
||||
/* Group boxes */ \
|
||||
MakeWidget({6, 0}, {WW - 12, 0}, WindowWidgetType::Groupbox, WindowColour::Secondary, STR_NONE, STR_NONE ), /* Details group box */ \
|
||||
MakeWidget({6, 0}, {WW - 12, 0}, WindowWidgetType::Groupbox, WindowColour::Secondary, STR_TILE_INSPECTOR_GROUPBOX_PROPERTIES, STR_NONE ) /* Properties group box */
|
||||
|
||||
static rct_widget DefaultWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
// Group boxes .top and .bottom for a given window height offsets from the bottom
|
||||
constexpr int32_t SUR_GBPB = PADDING_BOTTOM; // Surface group box properties bottom
|
||||
constexpr int32_t SUR_GBPT = SUR_GBPB + 16 + 4 * 21; // Surface group box properties top
|
||||
constexpr int32_t SUR_GBDB = SUR_GBPT + GROUPBOX_PADDING; // Surface group box details bottom
|
||||
constexpr int32_t SUR_GBDT = SUR_GBDB + 20 + 4 * 11; // Surface group box details top
|
||||
constexpr int32_t NumSurfaceProperties = 4;
|
||||
constexpr int32_t NumSurfaceDetails = 4;
|
||||
constexpr int32_t SurfacePropertiesHeight = 16 + NumSurfaceProperties * 21;
|
||||
constexpr int32_t SurfaceDetailsHeight = 20 + NumSurfaceDetails * 11;
|
||||
static rct_widget SurfaceWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - SUR_GBPT, 0) + 3, GBBB(WH - SUR_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_SURFACE_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::Button, 1, GBB(WH - SUR_GBPT, 0, 1), STR_TILE_INSPECTOR_SURFACE_REMOVE_FENCES, STR_NONE }, // WIDX_SURFACE_BUTTON_REMOVE_FENCES
|
||||
{ WindowWidgetType::Button, 1, GBB(WH - SUR_GBPT, 1, 1), STR_TILE_INSPECTOR_SURFACE_RESTORE_FENCES, STR_NONE }, // WIDX_SURFACE_BUTTON_RESTORE_FENCES
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - SUR_GBPT, 2) + 7 * 0), STR_NONE, STR_NONE }, // WIDX_SURFACE_CHECK_CORNER_N
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 2, GBBT(WH - SUR_GBPT, 2) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_SURFACE_CHECK_CORNER_E
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - SUR_GBPT, 2) + 7 * 2), STR_NONE, STR_NONE }, // WIDX_SURFACE_CHECK_CORNER_S
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 0, GBBT(WH - SUR_GBPT, 2) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_SURFACE_CHECK_CORNER_W
|
||||
{ WindowWidgetType::Checkbox, 1, GBBF(WH - SUR_GBPT, 0, 4), STR_TILE_INSPECTOR_SURFACE_DIAGONAL, STR_NONE }, // WIDX_SURFACE_CHECK_DIAGONAL
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_SURFACE_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 1, 0), PropertyButtonSize, WindowWidgetType::Button, WindowColour::Secondary, STR_TILE_INSPECTOR_SURFACE_REMOVE_FENCES), // WIDX_SURFACE_BUTTON_REMOVE_FENCES
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 1, 1), PropertyButtonSize, WindowWidgetType::Button, WindowColour::Secondary, STR_TILE_INSPECTOR_SURFACE_RESTORE_FENCES), // WIDX_SURFACE_BUTTON_RESTORE_FENCES
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 1, 0), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SURFACE_CHECK_CORNER_N
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 2, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SURFACE_CHECK_CORNER_E
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 1, 2), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SURFACE_CHECK_CORNER_S
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 0, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SURFACE_CHECK_CORNER_W
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 4, 0), PropertyFullWidth, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_TILE_INSPECTOR_SURFACE_DIAGONAL), // WIDX_SURFACE_CHECK_DIAGONAL
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
constexpr int32_t PAT_GBPB = PADDING_BOTTOM; // Path group box properties bottom
|
||||
constexpr int32_t PAT_GBPT = PAT_GBPB + 16 + 5 * 21; // Path group box properties top
|
||||
constexpr int32_t PAT_GBDB = PAT_GBPT + GROUPBOX_PADDING; // Path group box info bottom
|
||||
constexpr int32_t PAT_GBDT = PAT_GBDB + 20 + 2 * 11; // Path group box info top
|
||||
constexpr int32_t NumPathProperties = 5;
|
||||
constexpr int32_t NumPathDetails = 2;
|
||||
constexpr int32_t PathPropertiesHeight = 16 + NumPathProperties * 21;
|
||||
constexpr int32_t PathDetailsHeight = 20 + NumPathDetails * 11;
|
||||
static rct_widget PathWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - PAT_GBPT, 0) + 3, GBBB(WH - PAT_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_PATH_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::Checkbox, 1, GBBF(WH - PAT_GBPT, 0, 1), STR_TILE_INSPECTOR_PATH_BROKEN, STR_NONE }, // WIDX_PATH_CHECK_BROKEN
|
||||
{ WindowWidgetType::Checkbox, 1, GBBF(WH - PAT_GBPT, 0, 2), STR_TILE_INSPECTOR_PATH_SLOPED, STR_NONE }, // WIDX_PATH_CHECK_SLOPED
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 3, GBBT(WH - PAT_GBPT, 2) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_NE
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 4, GBBT(WH - PAT_GBPT, 2) + 7 * 2), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_E
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 3, GBBT(WH - PAT_GBPT, 2) + 7 * 3), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_SE
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 2, GBBT(WH - PAT_GBPT, 2) + 7 * 4), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_S
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - PAT_GBPT, 2) + 7 * 3), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_SW
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 0, GBBT(WH - PAT_GBPT, 2) + 7 * 2), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_W
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - PAT_GBPT, 2) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_NW
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 2, GBBT(WH - PAT_GBPT, 2) + 7 * 0), STR_NONE, STR_NONE }, // WIDX_PATH_CHECK_EDGE_N
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_PATH_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 1, 0), PropertyFullWidth, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_TILE_INSPECTOR_PATH_BROKEN), // WIDX_PATH_CHECK_BROKEN
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 2, 0), PropertyFullWidth, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_TILE_INSPECTOR_PATH_SLOPED), // WIDX_PATH_CHECK_SLOPED
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 3, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_NE
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 4, 2), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_E
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 3, 3), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_SE
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 2, 4), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_S
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 1, 3), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_SW
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 0, 2), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_W
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 1, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_NW
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 3, 1), 2, 0), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_PATH_CHECK_EDGE_N
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
constexpr int32_t TRA_GBPB = PADDING_BOTTOM; // Track group box properties bottom
|
||||
constexpr int32_t TRA_GBPT = TRA_GBPB + 16 + 5 * 21; // Track group box properties top
|
||||
constexpr int32_t TRA_GBDB = TRA_GBPT + GROUPBOX_PADDING; // Track group box info bottom
|
||||
constexpr int32_t TRA_GBDT = TRA_GBDB + 20 + 7 * 11; // Track group box info top
|
||||
constexpr int32_t NumTrackProperties = 5;
|
||||
constexpr int32_t NumTrackDetails = 7;
|
||||
constexpr int32_t TrackPropertiesHeight = 16 + NumTrackProperties * 21;
|
||||
constexpr int32_t TrackDetailsHeight = 20 + NumTrackDetails * 11;
|
||||
static rct_widget TrackWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
{ WindowWidgetType::Checkbox, 1, GBBF(WH - TRA_GBPT, 0, 0), STR_TILE_INSPECTOR_TRACK_ENTIRE_TRACK_PIECE, STR_NONE }, // WIDX_TRACK_CHECK_APPLY_TO_ALL
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - TRA_GBPT, 1) + 3, GBBB(WH - TRA_GBPT, 1) - 3, STR_NONE, STR_NONE), // WIDX_TRACK_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::Checkbox, 1, GBBF(WH - TRA_GBPT, 0, 2), STR_TILE_INSPECTOR_TRACK_CHAIN_LIFT, STR_NONE }, // WIDX_TRACK_CHECK_CHAIN_LIFT
|
||||
{ WindowWidgetType::Checkbox, 1, GBBF(WH - TRA_GBPT, 0, 3), STR_TILE_INSPECTOR_TRACK_BLOCK_BRAKE, STR_NONE }, // WIDX_PATH_CHECK_BLOCK_BRAKE_CLOSED
|
||||
{ WindowWidgetType::Checkbox, 1, GBBF(WH - TRA_GBPT, 0, 4), STR_TILE_INSPECTOR_TRACK_IS_INDESTRUCTIBLE, STR_NONE }, // WIDX_PATH_CHECK_IS_INDESTRUCTIBLE
|
||||
MakeWidget(PropertyRowCol({ 12, 0}, 0, 0), PropertyFullWidth, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_TILE_INSPECTOR_TRACK_ENTIRE_TRACK_PIECE), // WIDX_TRACK_CHECK_APPLY_TO_ALL
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 1, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_TRACK_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeWidget(PropertyRowCol({ 12, 0}, 2, 0), PropertyFullWidth, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_TILE_INSPECTOR_TRACK_CHAIN_LIFT), // WIDX_TRACK_CHECK_CHAIN_LIFT
|
||||
MakeWidget(PropertyRowCol({ 12, 0}, 3, 0), PropertyFullWidth, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_TILE_INSPECTOR_TRACK_BLOCK_BRAKE), // WIDX_TRACK_CHECK_BLOCK_BRAKE_CLOSED
|
||||
MakeWidget(PropertyRowCol({ 12, 0}, 4, 0), PropertyFullWidth, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_TILE_INSPECTOR_TRACK_IS_INDESTRUCTIBLE), // WIDX_TRACK_CHECK_IS_INDESTRUCTIBLE
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
constexpr int32_t SCE_GBPB = PADDING_BOTTOM; // Scenery group box properties bottom
|
||||
constexpr int32_t SCE_GBPT = SCE_GBPB + 16 + 4 * 21; // Scenery group box properties top
|
||||
constexpr int32_t SCE_GBDB = SCE_GBPT + GROUPBOX_PADDING; // Scenery group box info bottom
|
||||
constexpr int32_t SCE_GBDT = SCE_GBDB + 20 + 3 * 11; // Scenery group box info top
|
||||
constexpr int32_t NumSceneryProperties = 4; // The checkbox groups both count for 2 rows
|
||||
constexpr int32_t NumSceneryDetails = 4;
|
||||
constexpr int32_t SceneryPropertiesHeight = 16 + NumSceneryProperties * 21;
|
||||
constexpr int32_t SceneryDetailsHeight = 20 + NumSceneryDetails * 11;
|
||||
static rct_widget SceneryWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - SCE_GBPT, 0) + 3, GBBB(WH - SCE_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_SCENERY_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - SCE_GBPT, 1) + 7 * 0), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_QUARTER_N
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 2, GBBT(WH - SCE_GBPT, 1) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_QUARTER_E
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - SCE_GBPT, 1) + 7 * 2), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_QUARTER_S
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 0, GBBT(WH - SCE_GBPT, 1) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_QUARTER_W
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - SCE_GBPT, 2) + 7 * 0), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_COLLISION_N
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 2, GBBT(WH - SCE_GBPT, 2) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_COLLISION_E
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - SCE_GBPT, 2) + 7 * 2), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_COLLISION_S
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 0, GBBT(WH - SCE_GBPT, 2) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_SCENERY_CHECK_COLLISION_W
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_SCENERY_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 1, 0), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_QUARTER_N
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 2, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_QUARTER_E
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 1, 2), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_QUARTER_S
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 0, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_QUARTER_W
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 2, 1), 1, 0), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_COLLISION_N
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 2, 1), 2, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_COLLISION_E
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 2, 1), 1, 2), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_COLLISION_S
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 2, 1), 0, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_SCENERY_CHECK_COLLISION_W
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
|
||||
constexpr int32_t ENT_GBPB = PADDING_BOTTOM; // Entrance group box properties bottom
|
||||
constexpr int32_t ENT_GBPT = ENT_GBPB + 16 + 2 * 21; // Entrance group box properties top
|
||||
constexpr int32_t ENT_GBDB = ENT_GBPT + GROUPBOX_PADDING; // Entrance group box info bottom
|
||||
constexpr int32_t ENT_GBDT = ENT_GBDB + 20 + 4 * 11; // Entrance group box info top
|
||||
constexpr int32_t NumEntranceProperties = 2;
|
||||
constexpr int32_t NumEntranceDetails = 4;
|
||||
constexpr int32_t EntrancePropertiesHeight = 16 + NumEntranceProperties * 21;
|
||||
constexpr int32_t EntranceDetailsHeight = 20 + NumEntranceDetails * 11;
|
||||
static rct_widget EntranceWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - ENT_GBPT, 0) + 3, GBBB(WH - ENT_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_ENTRANCE_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::Button, 1, GBB(WH - ENT_GBPT, 0, 1), STR_TILE_INSPECTOR_ENTRANCE_MAKE_USABLE, STR_TILE_INSPECTOR_ENTRANCE_MAKE_USABLE_TIP }, // WIDX_ENTRANCE_BUTTON_MAKE_USABLE
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_ENTRANCE_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 1, 0), PropertyButtonSize, WindowWidgetType::Button, WindowColour::Secondary, STR_TILE_INSPECTOR_ENTRANCE_MAKE_USABLE, STR_TILE_INSPECTOR_ENTRANCE_MAKE_USABLE_TIP), // WIDX_ENTRANCE_BUTTON_MAKE_USABLE
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
constexpr int32_t WALL_GBPB = PADDING_BOTTOM; // Wall group box properties bottom
|
||||
constexpr int32_t WALL_GBPT = WALL_GBPB + 16 + 3 * 21; // Wall group box properties top
|
||||
constexpr int32_t WALL_GBDB = WALL_GBPT + GROUPBOX_PADDING; // Wall group box info bottom
|
||||
constexpr int32_t WALL_GBDT = WALL_GBDB + 20 + 2 * 11; // Wall group box info top
|
||||
constexpr int32_t NumWallProperties = 3;
|
||||
constexpr int32_t NumWallDetails = 2;
|
||||
constexpr int32_t WallPropertiesHeight = 16 + NumWallProperties * 21;
|
||||
constexpr int32_t WallDetailsHeight = 20 + NumWallDetails * 11;
|
||||
static rct_widget WallWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - WALL_GBPT, 0) + 3, GBBB(WH - WALL_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_WALL_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::DropdownMenu, 1, GBD(WH - WALL_GBPT, 1, 1), STR_NONE, STR_NONE }, // WIDX_WALL_DROPDOWN_SLOPE
|
||||
{ WindowWidgetType::Button, 1, GBDB(WH - WALL_GBPT, 1, 1), STR_DROPDOWN_GLYPH, STR_NONE }, // WIDX_WALL_DROPDOWN_SLOPE_BUTTON
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - WALL_GBPT, 2) + 3, GBBB(WH - WALL_GBPT, 2) - 3, STR_NONE, STR_NONE), // WIDX_WALL_SPINNER_ANIMATION_FRAME{,_INCREASE,_DECREASE}
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_WALL_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 1, 1), PropertyButtonSize, WindowWidgetType::DropdownMenu, WindowColour::Secondary), // WIDX_WALL_DROPDOWN_SLOPE
|
||||
MakeWidget(PropertyRowCol({ 12 + PropertyButtonSize.width - 12, 0 }, 1, 1), { 11, 12}, WindowWidgetType::Button, WindowColour::Secondary, STR_DROPDOWN_GLYPH), // WIDX_WALL_DROPDOWN_SLOPE_BUTTON
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 2, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_WALL_SPINNER_ANIMATION_FRAME{,_INCREASE,_DECREASE}
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
constexpr int32_t LAR_GBPB = PADDING_BOTTOM; // Large scenery group box properties bottom
|
||||
constexpr int32_t LAR_GBPT = LAR_GBPB + 16 + 1 * 21; // Large scenery group box properties top
|
||||
constexpr int32_t LAR_GBDB = LAR_GBPT + GROUPBOX_PADDING; // Large scenery group box info bottom
|
||||
constexpr int32_t LAR_GBDT = LAR_GBDB + 20 + 3 * 11; // Large scenery group box info top
|
||||
constexpr int32_t NumLargeSceneryProperties = 1;
|
||||
constexpr int32_t NumLargeSceneryDetails = 3;
|
||||
constexpr int32_t LargeSceneryPropertiesHeight = 16 + NumLargeSceneryProperties * 21;
|
||||
constexpr int32_t LargeSceneryDetailsHeight = 20 + NumLargeSceneryDetails * 11;
|
||||
static rct_widget LargeSceneryWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - LAR_GBPT, 0) + 3, GBBB(WH - LAR_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_LARGE_SCENERY_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_LARGE_SCENERY_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
constexpr int32_t BAN_GBPB = PADDING_BOTTOM; // Banner group box properties bottom
|
||||
constexpr int32_t BAN_GBPT = BAN_GBPB + 16 + 3 * 21; // Banner group box properties top
|
||||
constexpr int32_t BAN_GBDB = BAN_GBPT + GROUPBOX_PADDING; // Banner group box info bottom
|
||||
constexpr int32_t BAN_GBDT = BAN_GBDB + 20 + 1 * 11; // Banner group box info top
|
||||
constexpr int32_t NumBannerProperties = 3;
|
||||
constexpr int32_t NumBannerDetails = 1;
|
||||
constexpr int32_t BannerPropertiesHeight = 16 + NumBannerProperties * 21;
|
||||
constexpr int32_t BannerDetailsHeight = 20 + NumBannerDetails * 11;
|
||||
static rct_widget BannerWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - BAN_GBPT, 0) + 3, GBBB(WH - BAN_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_BANNER_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 3, GBBT(WH - BAN_GBPT, 1) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_BANNER_CHECK_BLOCK_NE
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 3, GBBT(WH - BAN_GBPT, 1) + 7 * 3), STR_NONE, STR_NONE }, // WIDX_BANNER_CHECK_BLOCK_SE
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - BAN_GBPT, 1) + 7 * 3), STR_NONE, STR_NONE }, // WIDX_BANNER_CHECK_BLOCK_SW
|
||||
{ WindowWidgetType::Checkbox, 1, CHK(GBBL(1) + 14 * 1, GBBT(WH - BAN_GBPT, 1) + 7 * 1), STR_NONE, STR_NONE }, // WIDX_BANNER_CHECK_BLOCK_NW
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_BANNER_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 3, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_BANNER_CHECK_BLOCK_NE
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 3, 3), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_BANNER_CHECK_BLOCK_SE
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 1, 3), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_BANNER_CHECK_BLOCK_SW
|
||||
MakeWidget(CheckboxGroupOffset(PropertyRowCol({ 12, 0 }, 1, 1), 1, 1), { 12, 12 }, WindowWidgetType::Checkbox, WindowColour::Secondary), // WIDX_BANNER_CHECK_BLOCK_NW
|
||||
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
constexpr int32_t COR_GBPB = PADDING_BOTTOM; // Corrupt element group box properties bottom
|
||||
constexpr int32_t COR_GBPT = COR_GBPB + 16 + 2 * 21; // Corrupt element group box properties top
|
||||
constexpr int32_t COR_GBDB = COR_GBPT + GROUPBOX_PADDING; // Corrupt element group box info bottom
|
||||
constexpr int32_t COR_GBDT = COR_GBDB + 20 + 0 * 11; // Corrupt element group box info top
|
||||
constexpr int32_t NumCorruptProperties = 2;
|
||||
constexpr int32_t NumCorruptDetails = 0;
|
||||
constexpr int32_t CorruptPropertiesHeight = 16 + NumCorruptProperties * 21;
|
||||
constexpr int32_t CorruptDetailsHeight = 20 + NumCorruptDetails * 11;
|
||||
static rct_widget CorruptWidgets[] = {
|
||||
MAIN_TILE_INSPECTOR_WIDGETS,
|
||||
SPINNER_WIDGETS (1, GBBL(1), GBBR(1), GBBT(WH - COR_GBPT, 0) + 3, GBBB(WH - COR_GBPT, 0) - 3, STR_NONE, STR_NONE), // WIDX_CORRUPT_SPINNER_HEIGHT{,_INCREASE,_DECREASE}
|
||||
{ WindowWidgetType::Button, 1, GBB(WH - SUR_GBPT, 0, 1), STR_TILE_INSPECTOR_CLAMP_TO_NEXT, STR_TILE_INSPECTOR_CLAMP_TO_NEXT_TIP }, // WIDX_CORRUPT_BUTTON_CLAMP
|
||||
MakeSpinnerWidgets(PropertyRowCol({ 12, 0 }, 0, 1), PropertyButtonSize, WindowWidgetType::Spinner, WindowColour::Secondary), // WIDX_CORRUPT_SPINNER_HEIGHT
|
||||
MakeWidget(PropertyRowCol({ 12, 0 }, 1, 0), PropertyButtonSize, WindowWidgetType::Button, WindowColour::Secondary,STR_TILE_INSPECTOR_CLAMP_TO_NEXT, STR_TILE_INSPECTOR_CLAMP_TO_NEXT_TIP ), // WIDX_CORRUPT_BUTTON_CLAMP
|
||||
WIDGETS_END,
|
||||
};
|
||||
|
||||
|
@ -390,23 +399,38 @@ static rct_widget *PageWidgets[] = {
|
|||
};
|
||||
// clang-format on
|
||||
|
||||
static struct
|
||||
struct TileInspectorGroupboxSettings
|
||||
{
|
||||
// Offsets from the bottom of the window
|
||||
int16_t details_top_offset, details_bottom_offset;
|
||||
int16_t properties_top_offset, properties_bottom_offset;
|
||||
// String to be displayed in the details groupbox
|
||||
rct_string_id string_id;
|
||||
} PageGroupBoxSettings[] = {
|
||||
{ SUR_GBDT, SUR_GBDB, SUR_GBPT, SUR_GBPB, STR_TILE_INSPECTOR_GROUPBOX_SURFACE_INFO },
|
||||
{ PAT_GBDT, PAT_GBDB, PAT_GBPT, PAT_GBPB, STR_TILE_INSPECTOR_GROUPBOX_PATH_INFO },
|
||||
{ TRA_GBDT, TRA_GBDB, TRA_GBPT, TRA_GBPB, STR_TILE_INSPECTOR_GROUPBOX_TRACK_INFO },
|
||||
{ SCE_GBDT, SCE_GBDB, SCE_GBPT, SCE_GBPB, STR_TILE_INSPECTOR_GROUPBOX_SCENERY_INFO },
|
||||
{ ENT_GBDT, ENT_GBDB, ENT_GBPT, ENT_GBPB, STR_TILE_INSPECTOR_GROUPBOX_ENTRANCE_INFO },
|
||||
{ WALL_GBDT, WALL_GBDB, WALL_GBPT, WALL_GBPB, STR_TILE_INSPECTOR_GROUPBOX_WALL_INFO },
|
||||
{ LAR_GBDT, LAR_GBDB, LAR_GBPT, LAR_GBPB, STR_TILE_INSPECTOR_GROUPBOX_LARGE_SCENERY_INFO },
|
||||
{ BAN_GBDT, BAN_GBDB, BAN_GBPT, BAN_GBPB, STR_TILE_INSPECTOR_GROUPBOX_BANNER_INFO },
|
||||
{ COR_GBDT, COR_GBDB, COR_GBPT, COR_GBPB, STR_TILE_INSPECTOR_GROUPBOX_CORRUPT_INFO },
|
||||
};
|
||||
|
||||
static constexpr TileInspectorGroupboxSettings MakeGroupboxSettings(
|
||||
int16_t detailsHeight, int16_t propertiesHeight, rct_string_id stringId)
|
||||
{
|
||||
TileInspectorGroupboxSettings settings{};
|
||||
decltype(settings.properties_bottom_offset) offsetSum = 0;
|
||||
settings.properties_bottom_offset = (offsetSum += PADDING_BOTTOM);
|
||||
settings.properties_top_offset = (offsetSum += propertiesHeight);
|
||||
settings.details_bottom_offset = (offsetSum += GROUPBOX_PADDING);
|
||||
settings.details_top_offset = (offsetSum += detailsHeight);
|
||||
settings.string_id = stringId;
|
||||
return settings;
|
||||
}
|
||||
|
||||
static constexpr TileInspectorGroupboxSettings PageGroupBoxSettings[] = {
|
||||
MakeGroupboxSettings(SurfaceDetailsHeight, SurfacePropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_SURFACE_INFO),
|
||||
MakeGroupboxSettings(PathDetailsHeight, PathPropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_PATH_INFO),
|
||||
MakeGroupboxSettings(TrackDetailsHeight, TrackPropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_TRACK_INFO),
|
||||
MakeGroupboxSettings(SceneryDetailsHeight, SceneryPropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_SCENERY_INFO),
|
||||
MakeGroupboxSettings(EntranceDetailsHeight, EntrancePropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_ENTRANCE_INFO),
|
||||
MakeGroupboxSettings(WallDetailsHeight, WallPropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_WALL_INFO),
|
||||
MakeGroupboxSettings(LargeSceneryDetailsHeight, LargeSceneryPropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_BANNER_INFO),
|
||||
MakeGroupboxSettings(BannerDetailsHeight, BannerPropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_BANNER_INFO),
|
||||
MakeGroupboxSettings(CorruptDetailsHeight, CorruptPropertiesHeight, STR_TILE_INSPECTOR_GROUPBOX_CORRUPT_INFO),
|
||||
};
|
||||
|
||||
static constexpr int32_t ViewportInteractionFlags = EnumsToFlags(
|
||||
|
@ -973,8 +997,6 @@ static void window_tile_inspector_mouseup(rct_window* w, rct_widgetindex widgetI
|
|||
|
||||
static void window_tile_inspector_resize(rct_window* w)
|
||||
{
|
||||
w->min_width = WW;
|
||||
w->min_height = MIN_WH;
|
||||
if (w->width < w->min_width)
|
||||
{
|
||||
w->Invalidate();
|
||||
|
@ -1745,60 +1767,27 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
{
|
||||
WindowDrawWidgets(w, dpi);
|
||||
|
||||
// Draw column headers
|
||||
rct_widget* widget;
|
||||
if ((widget = &w->widgets[WIDX_COLUMN_TYPE])->type != WindowWidgetType::Empty)
|
||||
{
|
||||
DrawTextEllipsised(
|
||||
dpi, { w->windowPos.x + widget->left + 1, w->windowPos.y + widget->top + 1 }, widget->width(),
|
||||
STR_TILE_INSPECTOR_ELEMENT_TYPE, {}, { w->colours[1] });
|
||||
}
|
||||
if ((widget = &w->widgets[WIDX_COLUMN_BASEHEIGHT])->type != WindowWidgetType::Empty)
|
||||
{
|
||||
DrawTextEllipsised(
|
||||
dpi, { w->windowPos.x + widget->left + 1, w->windowPos.y + widget->top + 1 }, widget->width(),
|
||||
STR_TILE_INSPECTOR_BASE_HEIGHT_SHORT, {}, { w->colours[1] });
|
||||
}
|
||||
if ((widget = &w->widgets[WIDX_COLUMN_CLEARANCEHEIGHT])->type != WindowWidgetType::Empty)
|
||||
{
|
||||
DrawTextEllipsised(
|
||||
dpi, { w->windowPos.x + widget->left + 1, w->windowPos.y + widget->top + 1 }, widget->width(),
|
||||
STR_TILE_INSPECTOR_CLEARANGE_HEIGHT_SHORT, {}, { w->colours[1] });
|
||||
}
|
||||
if ((widget = &w->widgets[WIDX_COLUMN_GHOSTFLAG])->type != WindowWidgetType::Empty)
|
||||
{
|
||||
DrawTextEllipsised(
|
||||
dpi, { w->windowPos.x + widget->left + 1, w->windowPos.y + widget->top + 1 }, widget->width(),
|
||||
STR_TILE_INSPECTOR_FLAG_GHOST_SHORT, {}, { w->colours[1] });
|
||||
}
|
||||
if ((widget = &w->widgets[WIDX_COLUMN_LASTFLAG])->type != WindowWidgetType::Empty)
|
||||
{
|
||||
DrawTextEllipsised(
|
||||
dpi, { w->windowPos.x + widget->left + 1, w->windowPos.y + widget->top + 1 }, widget->width(),
|
||||
STR_TILE_INSPECTOR_FLAG_LAST_SHORT, {}, { w->colours[1] });
|
||||
}
|
||||
|
||||
ScreenCoordsXY screenCoords(w->windowPos.x, w->windowPos.y);
|
||||
|
||||
// Draw coordinates
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(5, 24), "X:", { COLOUR_WHITE });
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(74, 24), "Y:", { COLOUR_WHITE });
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(5, 24), "X:", { w->colours[1] });
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(74, 24), "Y:", { w->colours[1] });
|
||||
if (windowTileInspectorTileSelected)
|
||||
{
|
||||
auto tileCoords = TileCoordsXY{ windowTileInspectorToolMap };
|
||||
auto ft = Formatter();
|
||||
ft.Add<int32_t>(tileCoords.x);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 43, 24 }, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE, TextAlignment::RIGHT });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 43, 24 }, STR_FORMAT_INTEGER, ft, { w->colours[1], TextAlignment::RIGHT });
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileCoords.y);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 113, 24 }, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE, TextAlignment::RIGHT });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 113, 24 }, STR_FORMAT_INTEGER, ft, { w->colours[1], TextAlignment::RIGHT });
|
||||
}
|
||||
else
|
||||
{
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(43 - 7, 24), "-", { COLOUR_WHITE });
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(113, 24), "-", { COLOUR_WHITE });
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(43 - 7, 24), "-", { w->colours[1] });
|
||||
gfx_draw_string(dpi, screenCoords + ScreenCoordsXY(113 - 7, 24), "-", { w->colours[1] });
|
||||
}
|
||||
|
||||
if (windowTileInspectorSelectedIndex != -1)
|
||||
|
@ -1826,7 +1815,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
}
|
||||
auto ft = Formatter();
|
||||
ft.Add<rct_string_id>(terrainNameId);
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SURFACE_TERAIN, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SURFACE_TERAIN, ft, { w->colours[1] });
|
||||
|
||||
// Edge texture name
|
||||
rct_string_id terrainEdgeNameId = STR_EMPTY;
|
||||
|
@ -1838,7 +1827,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(terrainEdgeNameId);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_SURFACE_EDGE, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_SURFACE_EDGE, ft, { w->colours[1] });
|
||||
|
||||
// Land ownership
|
||||
rct_string_id landOwnership;
|
||||
|
@ -1855,30 +1844,30 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(landOwnership);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_SURFACE_OWNERSHIP, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_SURFACE_OWNERSHIP, ft, { w->colours[1] });
|
||||
|
||||
// Water level
|
||||
ft = Formatter();
|
||||
ft.Add<uint32_t>(tileElement->AsSurface()->GetWaterHeight());
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 33 }, STR_TILE_INSPECTOR_SURFACE_WATER_LEVEL, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 33 }, STR_TILE_INSPECTOR_SURFACE_WATER_LEVEL, ft, { w->colours[1] });
|
||||
|
||||
// Properties
|
||||
// Raise / lower label
|
||||
screenCoords = w->windowPos
|
||||
+ ScreenCoordsXY{ w->widgets[WIDX_GROUPBOX_DETAILS].left + 7, w->widgets[WIDX_SURFACE_SPINNER_HEIGHT].top };
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_SURFACE_SPINNER_HEIGHT].left + 3;
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
|
||||
// Raised corners
|
||||
screenCoords = w->windowPos
|
||||
+ ScreenCoordsXY{ w->widgets[WIDX_GROUPBOX_DETAILS].left + 7, w->widgets[WIDX_SURFACE_CHECK_CORNER_E].top };
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SURFACE_CORNERS, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SURFACE_CORNERS, {}, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -1888,7 +1877,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
// Path name
|
||||
auto ft = Formatter();
|
||||
ft.Add<rct_string_id>(tileElement->AsPath()->GetSurfaceDescriptor()->Name);
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_PATH_NAME, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_PATH_NAME, ft, { w->colours[1] });
|
||||
|
||||
// Path addition
|
||||
if (tileElement->AsPath()->HasAddition())
|
||||
|
@ -1901,29 +1890,29 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(additionNameId);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_PATH_ADDITIONS, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_PATH_ADDITIONS, ft, { w->colours[1] });
|
||||
}
|
||||
else
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_PATH_ADDITIONS_NONE, {},
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
|
||||
// Properties
|
||||
// Raise / lower label
|
||||
screenCoords = w->windowPos
|
||||
+ ScreenCoordsXY{ w->widgets[WIDX_GROUPBOX_DETAILS].left + 7, w->widgets[WIDX_PATH_SPINNER_HEIGHT].top };
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_PATH_SPINNER_HEIGHT].left + 3;
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
|
||||
// Path connections
|
||||
screenCoords = w->windowPos
|
||||
+ ScreenCoordsXY{ w->widgets[WIDX_GROUPBOX_DETAILS].left + 7, w->widgets[WIDX_PATH_CHECK_EDGE_W].top };
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_PATH_CONNECTED_EDGES, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_PATH_CONNECTED_EDGES, {}, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -1936,7 +1925,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
// Ride ID
|
||||
auto ft = Formatter();
|
||||
ft.Add<int16_t>(rideId);
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_TRACK_RIDE_ID, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_TRACK_RIDE_ID, ft, { w->colours[1] });
|
||||
|
||||
// Ride name
|
||||
if (ride != nullptr)
|
||||
|
@ -1944,7 +1933,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ride->FormatNameTo(ft);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_TRACK_RIDE_NAME, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_TRACK_RIDE_NAME, ft, { w->colours[1] });
|
||||
}
|
||||
|
||||
// Ride type. Individual pieces may be of a different ride type from the ride it belongs to.
|
||||
|
@ -1952,18 +1941,18 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(rtd.Naming.Name);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_TRACK_RIDE_TYPE, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_TRACK_RIDE_TYPE, ft, { w->colours[1] });
|
||||
|
||||
// Track
|
||||
ft = Formatter();
|
||||
ft.Add<track_type_t>(trackElement->GetTrackType());
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 33 }, STR_TILE_INSPECTOR_TRACK_PIECE_ID, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 33 }, STR_TILE_INSPECTOR_TRACK_PIECE_ID, ft, { w->colours[1] });
|
||||
|
||||
ft = Formatter();
|
||||
ft.Add<track_type_t>(trackElement->GetSequenceIndex());
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 44 }, STR_TILE_INSPECTOR_TRACK_SEQUENCE, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 44 }, STR_TILE_INSPECTOR_TRACK_SEQUENCE, ft, { w->colours[1] });
|
||||
if (trackElement->IsStation())
|
||||
{
|
||||
int16_t stationIndex = trackElement->GetStationIndex();
|
||||
|
@ -1971,7 +1960,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft.Add<rct_string_id>(STR_COMMA16);
|
||||
ft.Add<int16_t>(stationIndex);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 55 }, STR_TILE_INSPECTOR_STATION_INDEX, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 55 }, STR_TILE_INSPECTOR_STATION_INDEX, ft, { w->colours[1] });
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1980,24 +1969,24 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft.Add<rct_string_id>(STR_STRING);
|
||||
ft.Add<char*>(stationNone);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 55 }, STR_TILE_INSPECTOR_STATION_INDEX, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 55 }, STR_TILE_INSPECTOR_STATION_INDEX, ft, { w->colours[1] });
|
||||
}
|
||||
|
||||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(ColourSchemeNames[trackElement->GetColourScheme()]);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 66 }, STR_TILE_INSPECTOR_COLOUR_SCHEME, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 66 }, STR_TILE_INSPECTOR_COLOUR_SCHEME, ft, { w->colours[1] });
|
||||
|
||||
// Properties
|
||||
// Raise / lower label
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_TRACK_SPINNER_HEIGHT].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_TRACK_SPINNER_HEIGHT].left + 3;
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2007,7 +1996,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
// Age
|
||||
auto ft = Formatter();
|
||||
ft.Add<int16_t>(tileElement->AsSmallScenery()->GetAge());
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SCENERY_AGE, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SCENERY_AGE, ft, { w->colours[1] });
|
||||
|
||||
// Quadrant value
|
||||
const auto* sceneryEntry = tileElement->AsSmallScenery()->GetEntry();
|
||||
|
@ -2023,35 +2012,36 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(quadrant_string_idx[quadrant]);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_SCENERY_QUADRANT, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_SCENERY_QUADRANT, ft,
|
||||
{ w->colours[1] });
|
||||
}
|
||||
|
||||
// Scenery ID
|
||||
ft = Formatter();
|
||||
ft.Add<ObjectEntryIndex>(tileElement->AsSmallScenery()->GetEntryIndex());
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_SCENERY_ENTRY_IDX, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_SCENERY_ENTRY_IDX, ft, { w->colours[1] });
|
||||
|
||||
// Properties
|
||||
// Raise / Lower
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_SCENERY_SPINNER_HEIGHT].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_SCENERY_SPINNER_HEIGHT].left + 3;
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
|
||||
// Quarter tile
|
||||
screenCoords = w->windowPos
|
||||
+ ScreenCoordsXY{ w->widgets[WIDX_GROUPBOX_DETAILS].left + 7,
|
||||
w->widgets[WIDX_SCENERY_CHECK_QUARTER_E].top };
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SCENERY_QUADRANT_LABEL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_SCENERY_QUADRANT_LABEL, {}, { w->colours[1] });
|
||||
|
||||
// Collision
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_SCENERY_CHECK_COLLISION_E].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_COLLISSION, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_COLLISSION, {}, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2061,7 +2051,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
// Entrance type
|
||||
auto ft = Formatter();
|
||||
ft.Add<rct_string_id>(EntranceTypeStringIds[tileElement->AsEntrance()->GetEntranceType()]);
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_ENTRANCE_TYPE, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_ENTRANCE_TYPE, ft, { w->colours[1] });
|
||||
|
||||
if (tileElement->AsEntrance()->GetEntranceType() == ENTRANCE_TYPE_PARK_ENTRANCE)
|
||||
{
|
||||
|
@ -2070,7 +2060,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft.Add<rct_string_id>(park_entrance_get_index({ windowTileInspectorToolMap, tileElement->GetBaseZ() }));
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_ENTRANCE_ENTRANCE_ID, ft,
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -2081,14 +2071,14 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
// Ride entrance ID
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_ENTRANCE_ENTRANCE_ID, ft,
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
}
|
||||
else
|
||||
{
|
||||
// Ride exit ID
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_ENTRANCE_EXIT_ID, ft,
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2098,7 +2088,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(ParkEntrancePartStringIds[tileElement->AsEntrance()->GetSequenceIndex()]);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_ENTRANCE_PART, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_ENTRANCE_PART, ft, { w->colours[1] });
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -2106,26 +2096,27 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ft = Formatter();
|
||||
ft.Add<ride_id_t>(tileElement->AsEntrance()->GetRideIndex());
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_ENTRANCE_RIDE_ID, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_ENTRANCE_RIDE_ID, ft,
|
||||
{ w->colours[1] });
|
||||
// Station index
|
||||
int16_t stationIndex = tileElement->AsEntrance()->GetStationIndex();
|
||||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(STR_COMMA16);
|
||||
ft.Add<int16_t>(stationIndex);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 33 }, STR_TILE_INSPECTOR_STATION_INDEX, ft, { COLOUR_WHITE });
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 33 }, STR_TILE_INSPECTOR_STATION_INDEX, ft, { w->colours[1] });
|
||||
}
|
||||
|
||||
// Properties
|
||||
// Raise / Lower
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_ENTRANCE_SPINNER_HEIGHT].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_ENTRANCE_SPINNER_HEIGHT].left + 3;
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2135,7 +2126,7 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
// Type
|
||||
auto ft = Formatter();
|
||||
ft.Add<ObjectEntryIndex>(tileElement->AsWall()->GetEntryIndex());
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_WALL_TYPE, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_WALL_TYPE, ft, { w->colours[1] });
|
||||
|
||||
// Banner info
|
||||
auto banner = tileElement->AsWall()->GetBanner();
|
||||
|
@ -2145,37 +2136,37 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
banner->FormatTextTo(ft);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_ENTRY_BANNER_TEXT, ft,
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
}
|
||||
else
|
||||
{
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_ENTRY_BANNER_NONE, {},
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
}
|
||||
|
||||
// Properties
|
||||
// Raise / lower label
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_WALL_SPINNER_HEIGHT].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_WALL_SPINNER_HEIGHT].left + 3;
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
|
||||
// Slope label
|
||||
screenCoords = w->windowPos
|
||||
+ ScreenCoordsXY{ w->widgets[WIDX_GROUPBOX_DETAILS].left + 7, w->widgets[WIDX_WALL_DROPDOWN_SLOPE].top };
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_WALL_SLOPE, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_WALL_SLOPE, {}, { w->colours[1] });
|
||||
|
||||
// Animation frame label
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_WALL_SPINNER_ANIMATION_FRAME].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_WALL_ANIMATION_FRAME, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_WALL_ANIMATION_FRAME, {}, { w->colours[1] });
|
||||
|
||||
// Current animation frame
|
||||
colour_t colour = COLOUR_WHITE;
|
||||
colour_t colour = w->colours[1];
|
||||
if (WidgetIsDisabled(w, WIDX_WALL_SPINNER_ANIMATION_FRAME))
|
||||
{
|
||||
colour = w->colours[0] | COLOUR_FLAG_INSET;
|
||||
|
@ -2195,14 +2186,14 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
ObjectEntryIndex largeSceneryType = sceneryElement->GetEntryIndex();
|
||||
auto ft = Formatter();
|
||||
ft.Add<ObjectEntryIndex>(largeSceneryType);
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_LARGE_SCENERY_TYPE, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_LARGE_SCENERY_TYPE, ft, { w->colours[1] });
|
||||
|
||||
// Part ID
|
||||
ft = Formatter();
|
||||
ft.Add<int16_t>(sceneryElement->GetSequenceIndex());
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 11 }, STR_TILE_INSPECTOR_LARGE_SCENERY_PIECE_ID, ft,
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
|
||||
// Banner info
|
||||
auto* largeSceneryEntry = get_large_scenery_entry(largeSceneryType);
|
||||
|
@ -2215,26 +2206,26 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
banner->FormatTextTo(ft);
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_ENTRY_BANNER_TEXT, ft,
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
DrawTextBasic(
|
||||
dpi, screenCoords + ScreenCoordsXY{ 0, 22 }, STR_TILE_INSPECTOR_ENTRY_BANNER_NONE, {},
|
||||
{ COLOUR_WHITE });
|
||||
{ w->colours[1] });
|
||||
}
|
||||
|
||||
// Properties
|
||||
// Raise / lower label
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_LARGE_SCENERY_SPINNER_HEIGHT].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_LARGE_SCENERY_SPINNER_HEIGHT].left + 3;
|
||||
ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2247,24 +2238,24 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
{
|
||||
Formatter ft;
|
||||
banner->FormatTextTo(ft);
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_ENTRY_BANNER_TEXT, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_ENTRY_BANNER_TEXT, ft, { w->colours[1] });
|
||||
}
|
||||
|
||||
// Properties
|
||||
// Raise / lower label
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_BANNER_SPINNER_HEIGHT].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_BANNER_SPINNER_HEIGHT].left + 3;
|
||||
auto ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
|
||||
// Blocked paths
|
||||
screenCoords.y += 28;
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_GROUPBOX_DETAILS].left + 7;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BANNER_BLOCKED_PATHS, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BANNER_BLOCKED_PATHS, {}, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2273,13 +2264,13 @@ static void window_tile_inspector_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
|||
// Properties
|
||||
// Raise / lower label
|
||||
screenCoords.y = w->windowPos.y + w->widgets[WIDX_CORRUPT_SPINNER_HEIGHT].top;
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_TILE_INSPECTOR_BASE_HEIGHT_FULL, {}, { w->colours[1] });
|
||||
|
||||
// Current base height
|
||||
screenCoords.x = w->windowPos.x + w->widgets[WIDX_CORRUPT_SPINNER_HEIGHT].left + 3;
|
||||
auto ft = Formatter();
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { COLOUR_WHITE });
|
||||
DrawTextBasic(dpi, screenCoords, STR_FORMAT_INTEGER, ft, { w->colours[1] });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2387,24 +2378,29 @@ static void window_tile_inspector_scrollpaint(rct_window* w, rct_drawpixelinfo*
|
|||
|
||||
const rct_string_id stringFormat = (selectedRow || hoveredRow) ? STR_WHITE_STRING : STR_WINDOW_COLOUR_2_STRINGID;
|
||||
|
||||
// Undo relative scroll offset, but keep the 3 pixel padding
|
||||
screenCoords.x = -w->widgets[WIDX_LIST].left;
|
||||
// Element name
|
||||
auto ft = Formatter();
|
||||
ft.Add<rct_string_id>(STR_STRING);
|
||||
ft.Add<char*>(typeName);
|
||||
DrawTextEllipsised(dpi, screenCoords + ScreenCoordsXY{ COL_X_TYPE + 3, 0 }, COL_X_BH, stringFormat, ft); // 3px padding
|
||||
DrawTextEllipsised(dpi, screenCoords + ScreenCoordsXY{ TypeColumnXY.x, 0 }, TypeColumnSize.width, stringFormat, ft);
|
||||
|
||||
// Base height
|
||||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(STR_FORMAT_INTEGER);
|
||||
ft.Add<int32_t>(tileElement->base_height);
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ COL_X_BH, 0 }, stringFormat, ft);
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ BaseHeightColumnXY.x, 0 }, stringFormat, ft);
|
||||
|
||||
// Clearance height
|
||||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(STR_FORMAT_INTEGER);
|
||||
ft.Add<int32_t>(clearanceHeight);
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ COL_X_CH, 0 }, stringFormat, ft);
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ ClearanceHeightColumnXY.x, 0 }, stringFormat, ft);
|
||||
|
||||
// Direction
|
||||
ft = Formatter();
|
||||
ft.Add<rct_string_id>(STR_FORMAT_INTEGER);
|
||||
ft.Add<int32_t>(tileElement->GetDirection());
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ DirectionColumnXY.x, 0 }, stringFormat, ft);
|
||||
|
||||
// Checkmarks for ghost and last for tile
|
||||
ft = Formatter();
|
||||
|
@ -2412,11 +2408,11 @@ static void window_tile_inspector_scrollpaint(rct_window* w, rct_drawpixelinfo*
|
|||
ft.Add<char*>(CheckBoxMarkString);
|
||||
if (ghost)
|
||||
{
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ COL_X_GF, 0 }, stringFormat, ft);
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ GhostFlagColumnXY.x, 0 }, stringFormat, ft);
|
||||
}
|
||||
if (last)
|
||||
{
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ COL_X_LF, 0 }, stringFormat, ft);
|
||||
DrawTextBasic(dpi, screenCoords + ScreenCoordsXY{ LastFlagColumnXY.x, 0 }, stringFormat, ft);
|
||||
}
|
||||
|
||||
screenCoords.y -= SCROLLABLE_ROW_HEIGHT;
|
||||
|
|
|
@ -133,7 +133,7 @@ static void window_track_place_clear_mini_preview()
|
|||
*/
|
||||
rct_window* window_track_place_open(const track_design_file_ref* tdFileRef)
|
||||
{
|
||||
_trackDesign = track_design_open(tdFileRef->path);
|
||||
_trackDesign = TrackDesignImport(tdFileRef->path);
|
||||
if (_trackDesign == nullptr)
|
||||
{
|
||||
return nullptr;
|
||||
|
@ -197,7 +197,7 @@ static void window_track_place_mouseup(rct_window* w, rct_widgetindex widgetInde
|
|||
window_track_place_draw_mini_preview(_trackDesign.get());
|
||||
break;
|
||||
case WIDX_MIRROR:
|
||||
track_design_mirror(_trackDesign.get());
|
||||
TrackDesignMirror(_trackDesign.get());
|
||||
_currentTrackPieceDirection = (0 - _currentTrackPieceDirection) & 3;
|
||||
w->Invalidate();
|
||||
_windowTrackPlaceLast.SetNull();
|
||||
|
@ -268,8 +268,7 @@ static void window_track_place_toolupdate(rct_window* w, rct_widgetindex widgetI
|
|||
// Check if tool map position has changed since last update
|
||||
if (mapCoords == _windowTrackPlaceLast)
|
||||
{
|
||||
place_virtual_track(
|
||||
_trackDesign.get(), PTD_OPERATION_DRAW_OUTLINES, true, GetOrAllocateRide(PreviewRideId), { mapCoords, 0 });
|
||||
TrackDesignPreviewDrawOutlines(_trackDesign.get(), GetOrAllocateRide(PreviewRideId), { mapCoords, 0 });
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -309,7 +308,7 @@ static void window_track_place_toolupdate(rct_window* w, rct_widgetindex widgetI
|
|||
widget_invalidate(w, WIDX_PRICE);
|
||||
}
|
||||
|
||||
place_virtual_track(_trackDesign.get(), PTD_OPERATION_DRAW_OUTLINES, true, GetOrAllocateRide(PreviewRideId), trackLoc);
|
||||
TrackDesignPreviewDrawOutlines(_trackDesign.get(), GetOrAllocateRide(PreviewRideId), trackLoc);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -413,7 +412,7 @@ static void window_track_place_clear_provisional()
|
|||
auto ride = get_ride(_window_track_place_ride_index);
|
||||
if (ride != nullptr)
|
||||
{
|
||||
place_virtual_track(_trackDesign.get(), PTD_OPERATION_REMOVE_GHOST, true, ride, _windowTrackPlaceLastValid);
|
||||
TrackDesignPreviewRemoveGhosts(_trackDesign.get(), ride, _windowTrackPlaceLastValid);
|
||||
_window_track_place_last_was_valid = false;
|
||||
}
|
||||
}
|
||||
|
@ -426,7 +425,7 @@ void TrackPlaceClearProvisionalTemporarily()
|
|||
auto ride = get_ride(_window_track_place_ride_index);
|
||||
if (ride != nullptr)
|
||||
{
|
||||
place_virtual_track(_trackDesign.get(), PTD_OPERATION_REMOVE_GHOST, true, ride, _windowTrackPlaceLastValid);
|
||||
TrackDesignPreviewRemoveGhosts(_trackDesign.get(), ride, _windowTrackPlaceLastValid);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -471,9 +470,7 @@ static int32_t window_track_place_get_base_z(const CoordsXY& loc)
|
|||
if (surfaceElement->GetWaterHeight() > 0)
|
||||
z = std::max(z, surfaceElement->GetWaterHeight());
|
||||
|
||||
return z
|
||||
+ place_virtual_track(
|
||||
_trackDesign.get(), PTD_OPERATION_GET_PLACE_Z, true, GetOrAllocateRide(PreviewRideId), { loc, z });
|
||||
return z + TrackDesignGetZPlacement(_trackDesign.get(), GetOrAllocateRide(PreviewRideId), { loc, z });
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -89,21 +89,14 @@ private:
|
|||
return;
|
||||
}
|
||||
|
||||
// Convert filter to lowercase
|
||||
utf8 filterStringLower[sizeof(_filterString)];
|
||||
String::Set(filterStringLower, sizeof(filterStringLower), _filterString);
|
||||
for (int32_t i = 0; filterStringLower[i] != '\0'; i++)
|
||||
filterStringLower[i] = static_cast<utf8>(tolower(filterStringLower[i]));
|
||||
// Convert filter to uppercase
|
||||
const auto filterStringUpper = String::ToUpper(_filterString);
|
||||
|
||||
// Fill the set with indices for tracks that match the filter
|
||||
for (uint16_t i = 0; i < _trackDesigns.size(); i++)
|
||||
{
|
||||
utf8 trackNameLower[USER_STRING_MAX_LENGTH];
|
||||
String::Set(trackNameLower, sizeof(trackNameLower), _trackDesigns[i].name);
|
||||
for (int32_t j = 0; trackNameLower[j] != '\0'; j++)
|
||||
trackNameLower[j] = static_cast<utf8>(tolower(trackNameLower[j]));
|
||||
|
||||
if (strstr(trackNameLower, filterStringLower) != nullptr)
|
||||
const auto trackNameUpper = String::ToUpper(_trackDesigns[i].name);
|
||||
if (trackNameUpper.find(filterStringUpper) != std::string::npos)
|
||||
{
|
||||
_filteredTrackIds.push_back(i);
|
||||
}
|
||||
|
@ -193,10 +186,10 @@ private:
|
|||
|
||||
bool LoadDesignPreview(utf8* path)
|
||||
{
|
||||
_loadedTrackDesign = track_design_open(path);
|
||||
_loadedTrackDesign = TrackDesignImport(path);
|
||||
if (_loadedTrackDesign != nullptr)
|
||||
{
|
||||
track_design_draw_preview(_loadedTrackDesign.get(), _trackDesignPreviewPixels.data());
|
||||
TrackDesignDrawPreview(_loadedTrackDesign.get(), _trackDesignPreviewPixels.data());
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
|
|
@ -18,10 +18,6 @@ struct rct_s6_data;
|
|||
|
||||
enum class GameCommand : int32_t
|
||||
{
|
||||
PasswordlessLogin = -3,
|
||||
ToggleSceneryCluster = -2,
|
||||
Chat = -1,
|
||||
|
||||
SetRideAppearance, // GA
|
||||
SetLandHeight, // GA
|
||||
TogglePause, // GA
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
#include <set>
|
||||
#include <string>
|
||||
|
||||
struct GameAction;
|
||||
class GameAction;
|
||||
|
||||
namespace OpenRCT2
|
||||
{
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(BalloonPressAction, GameCommand::BalloonPress, GameActions::Result)
|
||||
class BalloonPressAction final : public GameActionBase<GameCommand::BalloonPress>
|
||||
{
|
||||
uint16_t _spriteIndex{ SPRITE_INDEX_NULL };
|
||||
|
||||
|
@ -19,11 +19,11 @@ public:
|
|||
BalloonPressAction() = default;
|
||||
BalloonPressAction(uint16_t spriteIndex);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -16,7 +16,7 @@ struct BannerPlaceActionResult
|
|||
BannerIndex bannerId = BANNER_INDEX_NULL;
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(BannerPlaceAction, GameCommand::PlaceBanner, GameActions::Result)
|
||||
class BannerPlaceAction final : public GameActionBase<GameCommand::PlaceBanner>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -27,11 +27,11 @@ public:
|
|||
BannerPlaceAction() = default;
|
||||
BannerPlaceAction(const CoordsXYZD& loc, ObjectEntryIndex bannerType, colour_t primaryColour);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(BannerRemoveAction, GameCommand::RemoveBanner, GameActions::Result)
|
||||
class BannerRemoveAction final : public GameActionBase<GameCommand::RemoveBanner>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -20,11 +20,11 @@ public:
|
|||
BannerRemoveAction() = default;
|
||||
BannerRemoveAction(const CoordsXYZD& loc);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(BannerSetColourAction, GameCommand::SetBannerColour, GameActions::Result)
|
||||
class BannerSetColourAction final : public GameActionBase<GameCommand::SetBannerColour>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
BannerSetColourAction() = default;
|
||||
BannerSetColourAction(const CoordsXYZD& loc, uint8_t primaryColour);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(BannerSetNameAction, GameCommand::SetBannerName, GameActions::Result)
|
||||
class BannerSetNameAction final : public GameActionBase<GameCommand::SetBannerName>
|
||||
{
|
||||
private:
|
||||
BannerIndex _bannerIndex{ BANNER_INDEX_NULL };
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
BannerSetNameAction() = default;
|
||||
BannerSetNameAction(BannerIndex bannerIndex, const std::string& name);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -21,7 +21,7 @@ enum class BannerSetStyleType : uint8_t
|
|||
Count
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(BannerSetStyleAction, GameCommand::SetBannerStyle, GameActions::Result)
|
||||
class BannerSetStyleAction final : public GameActionBase<GameCommand::SetBannerStyle>
|
||||
{
|
||||
private:
|
||||
BannerSetStyleType _type{ BannerSetStyleType::Count };
|
||||
|
@ -32,11 +32,11 @@ public:
|
|||
BannerSetStyleAction() = default;
|
||||
BannerSetStyleAction(BannerSetStyleType type, uint8_t bannerIndex, uint8_t parameter);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -12,16 +12,16 @@
|
|||
#include "../world/Map.h"
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ChangeMapSizeAction, GameCommand::ChangeMapSize, GameActions::Result)
|
||||
class ChangeMapSizeAction final : public GameActionBase<GameCommand::ChangeMapSize>
|
||||
{
|
||||
public:
|
||||
ChangeMapSizeAction() = default;
|
||||
ChangeMapSizeAction(const int32_t targetSize);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ namespace CLEARABLE_ITEMS
|
|||
constexpr ClearableItems SCENERY_FOOTPATH = 1 << 2;
|
||||
} // namespace CLEARABLE_ITEMS
|
||||
|
||||
DEFINE_GAME_ACTION(ClearAction, GameCommand::ClearScenery, GameActions::Result)
|
||||
class ClearAction final : public GameActionBase<GameCommand::ClearScenery>
|
||||
{
|
||||
private:
|
||||
MapRange _range;
|
||||
|
@ -34,7 +34,7 @@ public:
|
|||
ClearAction() = default;
|
||||
ClearAction(MapRange range, ClearableItems itemsToClear);
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
#include "../world/Climate.h"
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ClimateSetAction, GameCommand::SetClimate, GameActions::Result)
|
||||
class ClimateSetAction final : public GameActionBase<GameCommand::SetClimate>
|
||||
{
|
||||
private:
|
||||
ClimateType _climate{};
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
ClimateSetAction() = default;
|
||||
ClimateSetAction(ClimateType climate);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
# include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(CustomAction, GameCommand::Custom, GameActions::Result)
|
||||
class CustomAction final : public GameActionBase<GameCommand::Custom>
|
||||
{
|
||||
private:
|
||||
std::string _id;
|
||||
|
@ -28,7 +28,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(FootpathAdditionPlaceAction, GameCommand::PlaceFootpathAddition, GameActions::Result)
|
||||
class FootpathAdditionPlaceAction final : public GameActionBase<GameCommand::PlaceFootpathAddition>
|
||||
{
|
||||
private:
|
||||
CoordsXYZ _loc;
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
FootpathAdditionPlaceAction() = default;
|
||||
FootpathAdditionPlaceAction(const CoordsXYZ& loc, ObjectEntryIndex pathItemType);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(FootpathAdditionRemoveAction, GameCommand::RemoveFootpathAddition, GameActions::Result)
|
||||
class FootpathAdditionRemoveAction final : public GameActionBase<GameCommand::RemoveFootpathAddition>
|
||||
{
|
||||
private:
|
||||
CoordsXYZ _loc;
|
||||
|
@ -20,11 +20,11 @@ public:
|
|||
FootpathAdditionRemoveAction() = default;
|
||||
FootpathAdditionRemoveAction(const CoordsXYZ& loc);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
#include "../world/Footpath.h"
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(FootpathPlaceAction, GameCommand::PlacePath, GameActions::Result)
|
||||
class FootpathPlaceAction final : public GameActionBase<GameCommand::PlacePath>
|
||||
{
|
||||
private:
|
||||
CoordsXYZ _loc;
|
||||
|
@ -27,21 +27,21 @@ public:
|
|||
FootpathPlaceAction(
|
||||
const CoordsXYZ& loc, uint8_t slope, ObjectEntryIndex type, ObjectEntryIndex railingsType,
|
||||
Direction direction = INVALID_DIRECTION, PathConstructFlags constructFlags = 0);
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
private:
|
||||
GameActions::Result::Ptr ElementUpdateQuery(PathElement * pathElement, GameActions::Result::Ptr res) const;
|
||||
GameActions::Result::Ptr ElementUpdateExecute(PathElement * pathElement, GameActions::Result::Ptr res) const;
|
||||
GameActions::Result::Ptr ElementUpdateQuery(PathElement* pathElement, GameActions::Result::Ptr res) const;
|
||||
GameActions::Result::Ptr ElementUpdateExecute(PathElement* pathElement, GameActions::Result::Ptr res) const;
|
||||
GameActions::Result::Ptr ElementInsertQuery(GameActions::Result::Ptr res) const;
|
||||
GameActions::Result::Ptr ElementInsertExecute(GameActions::Result::Ptr res) const;
|
||||
void AutomaticallySetPeepSpawn() const;
|
||||
void RemoveIntersectingWalls(PathElement * pathElement) const;
|
||||
void RemoveIntersectingWalls(PathElement* pathElement) const;
|
||||
PathElement* map_get_footpath_element_slope(const CoordsXYZ& footpathPos, int32_t slope) const;
|
||||
bool IsSameAsPathElement(const PathElement* pathElement) const;
|
||||
bool IsSameAsEntranceElement(const EntranceElement& entranceElement) const;
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(FootpathPlaceFromTrackAction, GameCommand::PlacePathFromTrack, GameActions::Result)
|
||||
class FootpathPlaceFromTrackAction final : public GameActionBase<GameCommand::PlacePathFromTrack>
|
||||
{
|
||||
private:
|
||||
CoordsXYZ _loc;
|
||||
|
@ -29,7 +29,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
#include "../management/Finance.h"
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(FootpathRemoveAction, GameCommand::RemovePath, GameActions::Result)
|
||||
class FootpathRemoveAction final : public GameActionBase<GameCommand::RemovePath>
|
||||
{
|
||||
private:
|
||||
CoordsXYZ _loc;
|
||||
|
@ -21,16 +21,16 @@ public:
|
|||
FootpathRemoveAction() = default;
|
||||
FootpathRemoveAction(const CoordsXYZ& location);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
private:
|
||||
TileElement* GetFootpathElement() const;
|
||||
money32 GetRefundPrice(TileElement * footpathElement) const;
|
||||
money32 GetRefundPrice(TileElement* footpathElement) const;
|
||||
GameActions::Result::Ptr RemoveBannersAtElement(const CoordsXY& loc, TileElement* tileElement) const;
|
||||
};
|
||||
|
|
|
@ -60,31 +60,10 @@ namespace GameActions
|
|||
}
|
||||
};
|
||||
|
||||
static GameActionFactory _actions[EnumValue(GameCommand::Count)];
|
||||
static std::multiset<QueuedGameAction> _actionQueue;
|
||||
static uint32_t _nextUniqueId = 0;
|
||||
static bool _suspended = false;
|
||||
|
||||
GameActionFactory Register(GameCommand id, GameActionFactory factory)
|
||||
{
|
||||
const auto idx = static_cast<size_t>(id);
|
||||
|
||||
Guard::Assert(idx < std::size(_actions));
|
||||
Guard::ArgumentNotNull(factory);
|
||||
|
||||
_actions[idx] = factory;
|
||||
return factory;
|
||||
}
|
||||
|
||||
bool IsValidId(uint32_t id)
|
||||
{
|
||||
if (id < std::size(_actions))
|
||||
{
|
||||
return _actions[id] != nullptr;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void SuspendQueue()
|
||||
{
|
||||
_suspended = true;
|
||||
|
@ -179,38 +158,6 @@ namespace GameActions
|
|||
_actionQueue.clear();
|
||||
}
|
||||
|
||||
void Initialize()
|
||||
{
|
||||
static bool initialized = false;
|
||||
if (initialized)
|
||||
return;
|
||||
|
||||
Register();
|
||||
|
||||
initialized = true;
|
||||
}
|
||||
|
||||
std::unique_ptr<GameAction> Create(GameCommand id)
|
||||
{
|
||||
Initialize();
|
||||
|
||||
const auto idx = static_cast<size_t>(id);
|
||||
|
||||
GameAction* result = nullptr;
|
||||
if (idx < std::size(_actions))
|
||||
{
|
||||
GameActionFactory factory = _actions[idx];
|
||||
if (factory != nullptr)
|
||||
{
|
||||
result = factory();
|
||||
}
|
||||
}
|
||||
#ifdef _DEBUG
|
||||
Guard::ArgumentNotNull(result, "Attempting to create unregistered gameaction: %u", id);
|
||||
#endif
|
||||
return std::unique_ptr<GameAction>(result);
|
||||
}
|
||||
|
||||
GameAction::Ptr Clone(const GameAction* action)
|
||||
{
|
||||
std::unique_ptr<GameAction> ga = GameActions::Create(action->GetType());
|
||||
|
@ -516,6 +463,11 @@ namespace GameActions
|
|||
}
|
||||
} // namespace GameActions
|
||||
|
||||
const char* GameAction::GetName() const
|
||||
{
|
||||
return GameActions::GetName(_type);
|
||||
}
|
||||
|
||||
bool GameAction::LocationValid(const CoordsXY& coords) const
|
||||
{
|
||||
auto result = map_is_location_valid(coords);
|
||||
|
|
|
@ -92,11 +92,11 @@ public:
|
|||
}
|
||||
};
|
||||
|
||||
struct GameAction
|
||||
class GameAction
|
||||
{
|
||||
public:
|
||||
using Ptr = std::unique_ptr<GameAction>;
|
||||
using Callback_t = std::function<void(const struct GameAction*, const GameActions::Result*)>;
|
||||
using Callback_t = std::function<void(const class GameAction*, const GameActions::Result*)>;
|
||||
|
||||
private:
|
||||
GameCommand const _type;
|
||||
|
@ -114,7 +114,7 @@ public:
|
|||
|
||||
virtual ~GameAction() = default;
|
||||
|
||||
virtual const char* GetName() const = 0;
|
||||
const char* GetName() const;
|
||||
|
||||
virtual void AcceptParameters(GameActionParameterVisitor&)
|
||||
{
|
||||
|
@ -235,11 +235,9 @@ template<GameCommand TId> struct GameActionNameQuery
|
|||
{
|
||||
};
|
||||
|
||||
template<GameCommand TType, typename TResultType> struct GameActionBase : GameAction
|
||||
template<GameCommand TType> struct GameActionBase : GameAction
|
||||
{
|
||||
public:
|
||||
using Result = TResultType;
|
||||
|
||||
static constexpr GameCommand TYPE = TType;
|
||||
|
||||
GameActionBase()
|
||||
|
@ -247,22 +245,10 @@ public:
|
|||
{
|
||||
}
|
||||
|
||||
virtual const char* GetName() const override
|
||||
{
|
||||
return GameActionNameQuery<TType>::Name();
|
||||
}
|
||||
|
||||
void SetCallback(std::function<void(const struct GameAction*, const TResultType*)> typedCallback)
|
||||
{
|
||||
GameAction::SetCallback([typedCallback](const GameAction* ga, const GameActions::Result* result) {
|
||||
typedCallback(ga, static_cast<const TResultType*>(result));
|
||||
});
|
||||
}
|
||||
|
||||
protected:
|
||||
template<class... TTypes> static constexpr std::unique_ptr<TResultType> MakeResult(TTypes&&... args)
|
||||
template<class... TTypes> static std::unique_ptr<GameActions::Result> MakeResult(TTypes&&... args)
|
||||
{
|
||||
return std::make_unique<TResultType>(std::forward<TTypes>(args)...);
|
||||
return std::make_unique<GameActions::Result>(std::forward<TTypes>(args)...);
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -270,9 +256,8 @@ namespace GameActions
|
|||
{
|
||||
using GameActionFactory = GameAction* (*)();
|
||||
|
||||
void Initialize();
|
||||
void Register();
|
||||
bool IsValidId(uint32_t id);
|
||||
const char* GetName(GameCommand id);
|
||||
|
||||
// Halts the queue processing until ResumeQueue is called, any calls to ProcessQueue
|
||||
// will have no effect during suspension. It has no effect of actions that will not
|
||||
|
@ -298,25 +283,4 @@ namespace GameActions
|
|||
GameActions::Result::Ptr QueryNested(const GameAction* action);
|
||||
GameActions::Result::Ptr ExecuteNested(const GameAction* action);
|
||||
|
||||
GameActionFactory Register(GameCommand id, GameActionFactory action);
|
||||
|
||||
template<typename T> static GameActionFactory Register()
|
||||
{
|
||||
GameActionFactory factory = []() -> GameAction* { return new T(); };
|
||||
Register(T::TYPE, factory);
|
||||
return factory;
|
||||
}
|
||||
|
||||
// clang-format off
|
||||
#define DEFINE_GAME_ACTION(cls, id, res) \
|
||||
template<> struct GameActionNameQuery<id> \
|
||||
{ \
|
||||
static const char* Name() \
|
||||
{ \
|
||||
return #cls; \
|
||||
} \
|
||||
}; \
|
||||
struct cls final : public GameActionBase<id, res>
|
||||
// clang-format on
|
||||
|
||||
} // namespace GameActions
|
||||
|
|
|
@ -1,181 +0,0 @@
|
|||
/*****************************************************************************
|
||||
* Copyright (c) 2014-2020 OpenRCT2 developers
|
||||
*
|
||||
* For a complete list of all authors, please refer to contributors.md
|
||||
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
|
||||
*
|
||||
* OpenRCT2 is licensed under the GNU General Public License version 3.
|
||||
*****************************************************************************/
|
||||
|
||||
#include "BalloonPressAction.h"
|
||||
#include "BannerPlaceAction.h"
|
||||
#include "BannerRemoveAction.h"
|
||||
#include "BannerSetColourAction.h"
|
||||
#include "BannerSetNameAction.h"
|
||||
#include "BannerSetStyleAction.h"
|
||||
#include "ChangeMapSizeAction.h"
|
||||
#include "ClearAction.h"
|
||||
#include "ClimateSetAction.h"
|
||||
#include "CustomAction.h"
|
||||
#include "FootpathAdditionPlaceAction.h"
|
||||
#include "FootpathAdditionRemoveAction.h"
|
||||
#include "FootpathPlaceAction.h"
|
||||
#include "FootpathPlaceFromTrackAction.h"
|
||||
#include "FootpathRemoveAction.h"
|
||||
#include "GameAction.h"
|
||||
#include "GuestSetFlagsAction.h"
|
||||
#include "GuestSetNameAction.h"
|
||||
#include "LandBuyRightsAction.h"
|
||||
#include "LandLowerAction.h"
|
||||
#include "LandRaiseAction.h"
|
||||
#include "LandSetHeightAction.h"
|
||||
#include "LandSetRightsAction.h"
|
||||
#include "LandSmoothAction.h"
|
||||
#include "LargeSceneryPlaceAction.h"
|
||||
#include "LargeSceneryRemoveAction.h"
|
||||
#include "LargeScenerySetColourAction.h"
|
||||
#include "LoadOrQuitAction.h"
|
||||
#include "MazePlaceTrackAction.h"
|
||||
#include "MazeSetTrackAction.h"
|
||||
#include "NetworkModifyGroupAction.h"
|
||||
#include "ParkEntranceRemoveAction.h"
|
||||
#include "ParkMarketingAction.h"
|
||||
#include "ParkSetDateAction.h"
|
||||
#include "ParkSetLoanAction.h"
|
||||
#include "ParkSetNameAction.h"
|
||||
#include "ParkSetParameterAction.h"
|
||||
#include "ParkSetResearchFundingAction.h"
|
||||
#include "PauseToggleAction.h"
|
||||
#include "PeepPickupAction.h"
|
||||
#include "PlaceParkEntranceAction.h"
|
||||
#include "PlacePeepSpawnAction.h"
|
||||
#include "PlayerKickAction.h"
|
||||
#include "PlayerSetGroupAction.h"
|
||||
#include "RideCreateAction.h"
|
||||
#include "RideDemolishAction.h"
|
||||
#include "RideEntranceExitPlaceAction.h"
|
||||
#include "RideEntranceExitRemoveAction.h"
|
||||
#include "RideSetAppearanceAction.h"
|
||||
#include "RideSetColourSchemeAction.h"
|
||||
#include "RideSetNameAction.h"
|
||||
#include "RideSetPriceAction.h"
|
||||
#include "RideSetSettingAction.h"
|
||||
#include "RideSetStatusAction.h"
|
||||
#include "RideSetVehicleAction.h"
|
||||
#include "ScenarioSetSettingAction.h"
|
||||
#include "SetCheatAction.h"
|
||||
#include "SetParkEntranceFeeAction.h"
|
||||
#include "SignSetNameAction.h"
|
||||
#include "SignSetStyleAction.h"
|
||||
#include "SmallSceneryPlaceAction.h"
|
||||
#include "SmallSceneryRemoveAction.h"
|
||||
#include "SmallScenerySetColourAction.h"
|
||||
#include "StaffFireAction.h"
|
||||
#include "StaffHireNewAction.h"
|
||||
#include "StaffSetColourAction.h"
|
||||
#include "StaffSetCostumeAction.h"
|
||||
#include "StaffSetNameAction.h"
|
||||
#include "StaffSetOrdersAction.h"
|
||||
#include "StaffSetPatrolAreaAction.h"
|
||||
#include "SurfaceSetStyleAction.h"
|
||||
#include "TileModifyAction.h"
|
||||
#include "TrackDesignAction.h"
|
||||
#include "TrackPlaceAction.h"
|
||||
#include "TrackRemoveAction.h"
|
||||
#include "TrackSetBrakeSpeedAction.h"
|
||||
#include "WallPlaceAction.h"
|
||||
#include "WallRemoveAction.h"
|
||||
#include "WallSetColourAction.h"
|
||||
#include "WaterLowerAction.h"
|
||||
#include "WaterRaiseAction.h"
|
||||
#include "WaterSetHeightAction.h"
|
||||
|
||||
namespace GameActions
|
||||
{
|
||||
void Register()
|
||||
{
|
||||
Register<BalloonPressAction>();
|
||||
Register<BannerPlaceAction>();
|
||||
Register<BannerRemoveAction>();
|
||||
Register<BannerSetColourAction>();
|
||||
Register<BannerSetNameAction>();
|
||||
Register<BannerSetStyleAction>();
|
||||
Register<ClimateSetAction>();
|
||||
Register<FootpathPlaceAction>();
|
||||
Register<FootpathPlaceFromTrackAction>();
|
||||
Register<FootpathRemoveAction>();
|
||||
Register<FootpathAdditionPlaceAction>();
|
||||
Register<FootpathAdditionRemoveAction>();
|
||||
Register<GuestSetNameAction>();
|
||||
Register<MazePlaceTrackAction>();
|
||||
Register<MazeSetTrackAction>();
|
||||
Register<NetworkModifyGroupAction>();
|
||||
Register<ParkMarketingAction>();
|
||||
Register<ParkEntranceRemoveAction>();
|
||||
Register<ParkSetLoanAction>();
|
||||
Register<ParkSetNameAction>();
|
||||
Register<ParkSetParameterAction>();
|
||||
Register<ParkSetResearchFundingAction>();
|
||||
Register<PeepPickupAction>();
|
||||
Register<PlaceParkEntranceAction>();
|
||||
Register<PlacePeepSpawnAction>();
|
||||
Register<PlayerKickAction>();
|
||||
Register<PlayerSetGroupAction>();
|
||||
Register<RideCreateAction>();
|
||||
Register<RideDemolishAction>();
|
||||
Register<RideEntranceExitPlaceAction>();
|
||||
Register<RideEntranceExitRemoveAction>();
|
||||
Register<RideSetColourSchemeAction>();
|
||||
Register<RideSetNameAction>();
|
||||
Register<RideSetPriceAction>();
|
||||
Register<RideSetStatusAction>();
|
||||
Register<RideSetAppearanceAction>();
|
||||
Register<RideSetVehicleAction>();
|
||||
Register<RideSetSettingAction>();
|
||||
Register<ScenarioSetSettingAction>();
|
||||
Register<SetParkEntranceFeeAction>();
|
||||
Register<SignSetNameAction>();
|
||||
Register<SignSetStyleAction>();
|
||||
Register<StaffFireAction>();
|
||||
Register<StaffHireNewAction>();
|
||||
Register<StaffSetColourAction>();
|
||||
Register<StaffSetNameAction>();
|
||||
Register<StaffSetOrdersAction>();
|
||||
Register<StaffSetCostumeAction>();
|
||||
Register<StaffSetPatrolAreaAction>();
|
||||
Register<SurfaceSetStyleAction>();
|
||||
Register<WallPlaceAction>();
|
||||
Register<WallRemoveAction>();
|
||||
Register<WallSetColourAction>();
|
||||
Register<SmallSceneryPlaceAction>();
|
||||
Register<SmallSceneryRemoveAction>();
|
||||
Register<SmallScenerySetColourAction>();
|
||||
Register<LargeSceneryPlaceAction>();
|
||||
Register<LargeSceneryRemoveAction>();
|
||||
Register<LargeScenerySetColourAction>();
|
||||
Register<LandBuyRightsAction>();
|
||||
Register<LandLowerAction>();
|
||||
Register<LandRaiseAction>();
|
||||
Register<LandSetHeightAction>();
|
||||
Register<LandSetRightsAction>();
|
||||
Register<LandSmoothAction>();
|
||||
Register<TileModifyAction>();
|
||||
Register<TrackDesignAction>();
|
||||
Register<TrackPlaceAction>();
|
||||
Register<TrackRemoveAction>();
|
||||
Register<TrackSetBrakeSpeedAction>();
|
||||
Register<ClearAction>();
|
||||
Register<PauseToggleAction>();
|
||||
Register<LoadOrQuitAction>();
|
||||
Register<WaterSetHeightAction>();
|
||||
Register<WaterLowerAction>();
|
||||
Register<WaterRaiseAction>();
|
||||
Register<GuestSetFlagsAction>();
|
||||
Register<ParkSetDateAction>();
|
||||
Register<SetCheatAction>();
|
||||
Register<ChangeMapSizeAction>();
|
||||
#ifdef ENABLE_SCRIPTING
|
||||
Register<CustomAction>();
|
||||
#endif
|
||||
}
|
||||
} // namespace GameActions
|
|
@ -0,0 +1,252 @@
|
|||
/*****************************************************************************
|
||||
* Copyright (c) 2014-2021 OpenRCT2 developers
|
||||
*
|
||||
* For a complete list of all authors, please refer to contributors.md
|
||||
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
|
||||
*
|
||||
* OpenRCT2 is licensed under the GNU General Public License version 3.
|
||||
*****************************************************************************/
|
||||
|
||||
#include "BalloonPressAction.h"
|
||||
#include "BannerPlaceAction.h"
|
||||
#include "BannerRemoveAction.h"
|
||||
#include "BannerSetColourAction.h"
|
||||
#include "BannerSetNameAction.h"
|
||||
#include "BannerSetStyleAction.h"
|
||||
#include "ChangeMapSizeAction.h"
|
||||
#include "ClearAction.h"
|
||||
#include "ClimateSetAction.h"
|
||||
#include "CustomAction.h"
|
||||
#include "FootpathAdditionPlaceAction.h"
|
||||
#include "FootpathAdditionRemoveAction.h"
|
||||
#include "FootpathPlaceAction.h"
|
||||
#include "FootpathPlaceFromTrackAction.h"
|
||||
#include "FootpathRemoveAction.h"
|
||||
#include "GameAction.h"
|
||||
#include "GuestSetFlagsAction.h"
|
||||
#include "GuestSetNameAction.h"
|
||||
#include "LandBuyRightsAction.h"
|
||||
#include "LandLowerAction.h"
|
||||
#include "LandRaiseAction.h"
|
||||
#include "LandSetHeightAction.h"
|
||||
#include "LandSetRightsAction.h"
|
||||
#include "LandSmoothAction.h"
|
||||
#include "LargeSceneryPlaceAction.h"
|
||||
#include "LargeSceneryRemoveAction.h"
|
||||
#include "LargeScenerySetColourAction.h"
|
||||
#include "LoadOrQuitAction.h"
|
||||
#include "MazePlaceTrackAction.h"
|
||||
#include "MazeSetTrackAction.h"
|
||||
#include "NetworkModifyGroupAction.h"
|
||||
#include "ParkEntranceRemoveAction.h"
|
||||
#include "ParkMarketingAction.h"
|
||||
#include "ParkSetDateAction.h"
|
||||
#include "ParkSetLoanAction.h"
|
||||
#include "ParkSetNameAction.h"
|
||||
#include "ParkSetParameterAction.h"
|
||||
#include "ParkSetResearchFundingAction.h"
|
||||
#include "PauseToggleAction.h"
|
||||
#include "PeepPickupAction.h"
|
||||
#include "PlaceParkEntranceAction.h"
|
||||
#include "PlacePeepSpawnAction.h"
|
||||
#include "PlayerKickAction.h"
|
||||
#include "PlayerSetGroupAction.h"
|
||||
#include "RideCreateAction.h"
|
||||
#include "RideDemolishAction.h"
|
||||
#include "RideEntranceExitPlaceAction.h"
|
||||
#include "RideEntranceExitRemoveAction.h"
|
||||
#include "RideSetAppearanceAction.h"
|
||||
#include "RideSetColourSchemeAction.h"
|
||||
#include "RideSetNameAction.h"
|
||||
#include "RideSetPriceAction.h"
|
||||
#include "RideSetSettingAction.h"
|
||||
#include "RideSetStatusAction.h"
|
||||
#include "RideSetVehicleAction.h"
|
||||
#include "ScenarioSetSettingAction.h"
|
||||
#include "SetCheatAction.h"
|
||||
#include "SetParkEntranceFeeAction.h"
|
||||
#include "SignSetNameAction.h"
|
||||
#include "SignSetStyleAction.h"
|
||||
#include "SmallSceneryPlaceAction.h"
|
||||
#include "SmallSceneryRemoveAction.h"
|
||||
#include "SmallScenerySetColourAction.h"
|
||||
#include "StaffFireAction.h"
|
||||
#include "StaffHireNewAction.h"
|
||||
#include "StaffSetColourAction.h"
|
||||
#include "StaffSetCostumeAction.h"
|
||||
#include "StaffSetNameAction.h"
|
||||
#include "StaffSetOrdersAction.h"
|
||||
#include "StaffSetPatrolAreaAction.h"
|
||||
#include "SurfaceSetStyleAction.h"
|
||||
#include "TileModifyAction.h"
|
||||
#include "TrackDesignAction.h"
|
||||
#include "TrackPlaceAction.h"
|
||||
#include "TrackRemoveAction.h"
|
||||
#include "TrackSetBrakeSpeedAction.h"
|
||||
#include "WallPlaceAction.h"
|
||||
#include "WallRemoveAction.h"
|
||||
#include "WallSetColourAction.h"
|
||||
#include "WaterLowerAction.h"
|
||||
#include "WaterRaiseAction.h"
|
||||
#include "WaterSetHeightAction.h"
|
||||
|
||||
#include <array>
|
||||
|
||||
namespace GameActions
|
||||
{
|
||||
struct GameActionEntry
|
||||
{
|
||||
GameActionFactory factory{};
|
||||
const char* name{};
|
||||
};
|
||||
|
||||
using GameActionRegistry = std::array<GameActionEntry, EnumValue(GameCommand::Count)>;
|
||||
|
||||
template<GameCommand TId>
|
||||
static constexpr void Register(GameActionRegistry& registry, GameActionFactory factory, const char* name)
|
||||
{
|
||||
constexpr auto idx = static_cast<size_t>(TId);
|
||||
|
||||
static_assert(idx < EnumValue(GameCommand::Count));
|
||||
|
||||
registry[idx] = { factory, name };
|
||||
}
|
||||
|
||||
template<typename T> static constexpr void Register(GameActionRegistry& registry, const char* name)
|
||||
{
|
||||
GameActionFactory factory = []() -> GameAction* { return new T(); };
|
||||
Register<T::TYPE>(registry, factory, name);
|
||||
}
|
||||
|
||||
static constexpr GameActionRegistry BuildRegistry()
|
||||
{
|
||||
GameActionRegistry registry{};
|
||||
|
||||
#define REGISTER_ACTION(type) Register<type>(registry, #type)
|
||||
|
||||
REGISTER_ACTION(BalloonPressAction);
|
||||
REGISTER_ACTION(BannerPlaceAction);
|
||||
REGISTER_ACTION(BannerRemoveAction);
|
||||
REGISTER_ACTION(BannerSetColourAction);
|
||||
REGISTER_ACTION(BannerSetNameAction);
|
||||
REGISTER_ACTION(BannerSetStyleAction);
|
||||
REGISTER_ACTION(ClimateSetAction);
|
||||
REGISTER_ACTION(FootpathPlaceAction);
|
||||
REGISTER_ACTION(FootpathPlaceFromTrackAction);
|
||||
REGISTER_ACTION(FootpathRemoveAction);
|
||||
REGISTER_ACTION(FootpathAdditionPlaceAction);
|
||||
REGISTER_ACTION(FootpathAdditionRemoveAction);
|
||||
REGISTER_ACTION(GuestSetNameAction);
|
||||
REGISTER_ACTION(MazePlaceTrackAction);
|
||||
REGISTER_ACTION(MazeSetTrackAction);
|
||||
REGISTER_ACTION(NetworkModifyGroupAction);
|
||||
REGISTER_ACTION(ParkMarketingAction);
|
||||
REGISTER_ACTION(ParkEntranceRemoveAction);
|
||||
REGISTER_ACTION(ParkSetLoanAction);
|
||||
REGISTER_ACTION(ParkSetNameAction);
|
||||
REGISTER_ACTION(ParkSetParameterAction);
|
||||
REGISTER_ACTION(ParkSetResearchFundingAction);
|
||||
REGISTER_ACTION(PeepPickupAction);
|
||||
REGISTER_ACTION(PlaceParkEntranceAction);
|
||||
REGISTER_ACTION(PlacePeepSpawnAction);
|
||||
REGISTER_ACTION(PlayerKickAction);
|
||||
REGISTER_ACTION(PlayerSetGroupAction);
|
||||
REGISTER_ACTION(RideCreateAction);
|
||||
REGISTER_ACTION(RideDemolishAction);
|
||||
REGISTER_ACTION(RideEntranceExitPlaceAction);
|
||||
REGISTER_ACTION(RideEntranceExitRemoveAction);
|
||||
REGISTER_ACTION(RideSetColourSchemeAction);
|
||||
REGISTER_ACTION(RideSetNameAction);
|
||||
REGISTER_ACTION(RideSetPriceAction);
|
||||
REGISTER_ACTION(RideSetStatusAction);
|
||||
REGISTER_ACTION(RideSetAppearanceAction);
|
||||
REGISTER_ACTION(RideSetVehicleAction);
|
||||
REGISTER_ACTION(RideSetSettingAction);
|
||||
REGISTER_ACTION(ScenarioSetSettingAction);
|
||||
REGISTER_ACTION(SetParkEntranceFeeAction);
|
||||
REGISTER_ACTION(SignSetNameAction);
|
||||
REGISTER_ACTION(SignSetStyleAction);
|
||||
REGISTER_ACTION(StaffFireAction);
|
||||
REGISTER_ACTION(StaffHireNewAction);
|
||||
REGISTER_ACTION(StaffSetColourAction);
|
||||
REGISTER_ACTION(StaffSetNameAction);
|
||||
REGISTER_ACTION(StaffSetOrdersAction);
|
||||
REGISTER_ACTION(StaffSetCostumeAction);
|
||||
REGISTER_ACTION(StaffSetPatrolAreaAction);
|
||||
REGISTER_ACTION(SurfaceSetStyleAction);
|
||||
REGISTER_ACTION(WallPlaceAction);
|
||||
REGISTER_ACTION(WallRemoveAction);
|
||||
REGISTER_ACTION(WallSetColourAction);
|
||||
REGISTER_ACTION(SmallSceneryPlaceAction);
|
||||
REGISTER_ACTION(SmallSceneryRemoveAction);
|
||||
REGISTER_ACTION(SmallScenerySetColourAction);
|
||||
REGISTER_ACTION(LargeSceneryPlaceAction);
|
||||
REGISTER_ACTION(LargeSceneryRemoveAction);
|
||||
REGISTER_ACTION(LargeScenerySetColourAction);
|
||||
REGISTER_ACTION(LandBuyRightsAction);
|
||||
REGISTER_ACTION(LandLowerAction);
|
||||
REGISTER_ACTION(LandRaiseAction);
|
||||
REGISTER_ACTION(LandSetHeightAction);
|
||||
REGISTER_ACTION(LandSetRightsAction);
|
||||
REGISTER_ACTION(LandSmoothAction);
|
||||
REGISTER_ACTION(TileModifyAction);
|
||||
REGISTER_ACTION(TrackDesignAction);
|
||||
REGISTER_ACTION(TrackPlaceAction);
|
||||
REGISTER_ACTION(TrackRemoveAction);
|
||||
REGISTER_ACTION(TrackSetBrakeSpeedAction);
|
||||
REGISTER_ACTION(ClearAction);
|
||||
REGISTER_ACTION(PauseToggleAction);
|
||||
REGISTER_ACTION(LoadOrQuitAction);
|
||||
REGISTER_ACTION(WaterSetHeightAction);
|
||||
REGISTER_ACTION(WaterLowerAction);
|
||||
REGISTER_ACTION(WaterRaiseAction);
|
||||
REGISTER_ACTION(GuestSetFlagsAction);
|
||||
REGISTER_ACTION(ParkSetDateAction);
|
||||
REGISTER_ACTION(SetCheatAction);
|
||||
REGISTER_ACTION(ChangeMapSizeAction);
|
||||
#ifdef ENABLE_SCRIPTING
|
||||
REGISTER_ACTION(CustomAction);
|
||||
#endif
|
||||
|
||||
#undef REGISTER_ACTION
|
||||
|
||||
return registry;
|
||||
}
|
||||
|
||||
static constexpr GameActionRegistry _registry = BuildRegistry();
|
||||
|
||||
const char* GetName(GameCommand id)
|
||||
{
|
||||
const auto idx = static_cast<size_t>(id);
|
||||
Guard::IndexInRange(idx, _registry);
|
||||
|
||||
return _registry[idx].name;
|
||||
}
|
||||
|
||||
std::unique_ptr<GameAction> Create(GameCommand id)
|
||||
{
|
||||
const auto idx = static_cast<size_t>(id);
|
||||
|
||||
GameAction* result = nullptr;
|
||||
if (idx < std::size(_registry))
|
||||
{
|
||||
GameActionFactory factory = _registry[idx].factory;
|
||||
if (factory != nullptr)
|
||||
{
|
||||
result = factory();
|
||||
}
|
||||
}
|
||||
Guard::ArgumentNotNull(result, "Attempting to create unregistered game action: %u", id);
|
||||
return std::unique_ptr<GameAction>(result);
|
||||
}
|
||||
|
||||
bool IsValidId(uint32_t id)
|
||||
{
|
||||
if (id < std::size(_registry))
|
||||
{
|
||||
return _registry[id].factory != nullptr;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
} // namespace GameActions
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(GuestSetFlagsAction, GameCommand::GuestSetFlags, GameActions::Result)
|
||||
class GuestSetFlagsAction final : public GameActionBase<GameCommand::GuestSetFlags>
|
||||
{
|
||||
private:
|
||||
uint16_t _peepId{ SPRITE_INDEX_NULL };
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
GuestSetFlagsAction() = default;
|
||||
GuestSetFlagsAction(uint16_t peepId, uint32_t flags);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(GuestSetNameAction, GameCommand::SetGuestName, GameActions::Result)
|
||||
class GuestSetNameAction final : public GameActionBase<GameCommand::SetGuestName>
|
||||
{
|
||||
private:
|
||||
uint16_t _spriteIndex{ SPRITE_INDEX_NULL };
|
||||
|
@ -24,11 +24,11 @@ public:
|
|||
uint16_t GetSpriteIndex() const;
|
||||
std::string GetGuestName() const;
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -18,7 +18,7 @@ enum class LandBuyRightSetting : uint8_t
|
|||
Count
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(LandBuyRightsAction, GameCommand::BuyLandRights, GameActions::Result)
|
||||
class LandBuyRightsAction final : public GameActionBase<GameCommand::BuyLandRights>
|
||||
{
|
||||
private:
|
||||
MapRange _range;
|
||||
|
@ -36,7 +36,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(LandLowerAction, GameCommand::LowerLand, GameActions::Result)
|
||||
class LandLowerAction final : public GameActionBase<GameCommand::LowerLand>
|
||||
{
|
||||
private:
|
||||
CoordsXY _coords;
|
||||
|
@ -24,7 +24,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(LandRaiseAction, GameCommand::RaiseLand, GameActions::Result)
|
||||
class LandRaiseAction final : public GameActionBase<GameCommand::RaiseLand>
|
||||
{
|
||||
private:
|
||||
CoordsXY _coords;
|
||||
|
@ -24,7 +24,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(LandSetHeightAction, GameCommand::SetLandHeight, GameActions::Result)
|
||||
class LandSetHeightAction final : public GameActionBase<GameCommand::SetLandHeight>
|
||||
{
|
||||
private:
|
||||
CoordsXY _coords;
|
||||
|
@ -24,7 +24,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
@ -34,16 +34,16 @@ private:
|
|||
money32 GetSmallSceneryRemovalCost() const;
|
||||
void SmallSceneryRemoval() const;
|
||||
rct_string_id CheckRideSupports() const;
|
||||
TileElement* CheckFloatingStructures(TileElement * surfaceElement, uint8_t zCorner) const;
|
||||
TileElement* CheckUnremovableObstructions(TileElement * surfaceElement, uint8_t zCorner) const;
|
||||
money32 GetSurfaceHeightChangeCost(SurfaceElement * surfaceElement) const;
|
||||
void SetSurfaceHeight(TileElement * surfaceElement) const;
|
||||
TileElement* CheckFloatingStructures(TileElement* surfaceElement, uint8_t zCorner) const;
|
||||
TileElement* CheckUnremovableObstructions(TileElement* surfaceElement, uint8_t zCorner) const;
|
||||
money32 GetSurfaceHeightChangeCost(SurfaceElement* surfaceElement) const;
|
||||
void SetSurfaceHeight(TileElement* surfaceElement) const;
|
||||
|
||||
/**
|
||||
*
|
||||
* rct2: 0x00663CB9
|
||||
*/
|
||||
static int32_t map_set_land_height_clear_func(
|
||||
TileElement * *tile_element, [[maybe_unused]] const CoordsXY& coords, [[maybe_unused]] uint8_t flags,
|
||||
TileElement** tile_element, [[maybe_unused]] const CoordsXY& coords, [[maybe_unused]] uint8_t flags,
|
||||
[[maybe_unused]] money32* price);
|
||||
};
|
||||
|
|
|
@ -21,7 +21,7 @@ enum class LandSetRightSetting : uint8_t
|
|||
Count
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(LandSetRightsAction, GameCommand::SetLandOwnership, GameActions::Result)
|
||||
class LandSetRightsAction final : public GameActionBase<GameCommand::SetLandOwnership>
|
||||
{
|
||||
private:
|
||||
MapRange _range;
|
||||
|
@ -35,7 +35,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(LandSmoothAction, GameCommand::EditLandSmooth, GameActions::Result)
|
||||
class LandSmoothAction final : public GameActionBase<GameCommand::EditLandSmooth>
|
||||
{
|
||||
private:
|
||||
CoordsXY _coords;
|
||||
|
@ -30,7 +30,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ struct LargeSceneryPlaceActionResult
|
|||
BannerIndex bannerId = BANNER_INDEX_NULL;
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(LargeSceneryPlaceAction, GameCommand::PlaceLargeScenery, GameActions::Result)
|
||||
class LargeSceneryPlaceAction final : public GameActionBase<GameCommand::PlaceLargeScenery>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -34,17 +34,17 @@ public:
|
|||
LargeSceneryPlaceAction(
|
||||
const CoordsXYZD& loc, ObjectEntryIndex sceneryType, uint8_t primaryColour, uint8_t secondaryColour);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
private:
|
||||
int16_t GetTotalNumTiles(rct_large_scenery_tile * tiles) const;
|
||||
bool CheckMapCapacity(rct_large_scenery_tile * tiles, int16_t numTiles) const;
|
||||
int16_t GetMaxSurfaceHeight(rct_large_scenery_tile * tiles) const;
|
||||
void SetNewLargeSceneryElement(LargeSceneryElement & sceneryElement, uint8_t tileNum) const;
|
||||
int16_t GetTotalNumTiles(rct_large_scenery_tile* tiles) const;
|
||||
bool CheckMapCapacity(rct_large_scenery_tile* tiles, int16_t numTiles) const;
|
||||
int16_t GetMaxSurfaceHeight(rct_large_scenery_tile* tiles) const;
|
||||
void SetNewLargeSceneryElement(LargeSceneryElement& sceneryElement, uint8_t tileNum) const;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(LargeSceneryRemoveAction, GameCommand::RemoveLargeScenery, GameActions::Result)
|
||||
class LargeSceneryRemoveAction final : public GameActionBase<GameCommand::RemoveLargeScenery>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
LargeSceneryRemoveAction() = default;
|
||||
LargeSceneryRemoveAction(const CoordsXYZD& location, uint16_t tileIndex);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(LargeScenerySetColourAction, GameCommand::SetLargeSceneryColour, GameActions::Result)
|
||||
class LargeScenerySetColourAction final : public GameActionBase<GameCommand::SetLargeSceneryColour>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -25,7 +25,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ enum class LoadOrQuitModes : uint8_t
|
|||
CloseSavePrompt
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(LoadOrQuitAction, GameCommand::LoadOrQuit, GameActions::Result)
|
||||
class LoadOrQuitAction final : public GameActionBase<GameCommand::LoadOrQuit>
|
||||
{
|
||||
private:
|
||||
LoadOrQuitModes _mode{};
|
||||
|
@ -29,7 +29,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(MazePlaceTrackAction, GameCommand::PlaceMazeDesign, GameActions::Result)
|
||||
class MazePlaceTrackAction final : public GameActionBase<GameCommand::PlaceMazeDesign>
|
||||
{
|
||||
private:
|
||||
CoordsXYZ _loc;
|
||||
|
@ -21,8 +21,8 @@ public:
|
|||
MazePlaceTrackAction() = default;
|
||||
MazePlaceTrackAction(const CoordsXYZ& location, NetworkRideId_t rideIndex, uint16_t mazeEntry);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -37,7 +37,7 @@ static constexpr const uint8_t byte_993D0C[] = {
|
|||
};
|
||||
// clang-format on
|
||||
|
||||
DEFINE_GAME_ACTION(MazeSetTrackAction, GameCommand::SetMazeTrack, GameActions::Result)
|
||||
class MazeSetTrackAction final : public GameActionBase<GameCommand::SetMazeTrack>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -49,8 +49,8 @@ public:
|
|||
MazeSetTrackAction() = default;
|
||||
MazeSetTrackAction(const CoordsXYZD& location, bool initialPlacement, NetworkRideId_t rideIndex, uint8_t mode);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ enum class PermissionState : uint8_t
|
|||
Count
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(NetworkModifyGroupAction, GameCommand::ModifyGroups, GameActions::Result)
|
||||
class NetworkModifyGroupAction final : public GameActionBase<GameCommand::ModifyGroups>
|
||||
{
|
||||
private:
|
||||
ModifyGroupType _type{ ModifyGroupType::Count };
|
||||
|
@ -46,7 +46,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ParkEntranceRemoveAction, GameCommand::RemoveParkEntrance, GameActions::Result)
|
||||
class ParkEntranceRemoveAction final : public GameActionBase<GameCommand::RemoveParkEntrance>
|
||||
{
|
||||
private:
|
||||
CoordsXYZ _loc;
|
||||
|
@ -22,7 +22,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ParkMarketingAction, GameCommand::StartMarketingCampaign, GameActions::Result)
|
||||
class ParkMarketingAction final : public GameActionBase<GameCommand::StartMarketingCampaign>
|
||||
{
|
||||
private:
|
||||
int32_t _type{};
|
||||
|
@ -22,11 +22,11 @@ public:
|
|||
ParkMarketingAction() = default;
|
||||
ParkMarketingAction(int32_t type, int32_t item, int32_t numWeeks);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ParkSetDateAction, GameCommand::SetDate, GameActions::Result)
|
||||
class ParkSetDateAction final : public GameActionBase<GameCommand::SetDate>
|
||||
{
|
||||
private:
|
||||
int32_t _year{};
|
||||
|
@ -22,11 +22,11 @@ public:
|
|||
ParkSetDateAction() = default;
|
||||
ParkSetDateAction(int32_t year, int32_t month, int32_t day);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ParkSetLoanAction, GameCommand::SetCurrentLoan, GameActions::Result)
|
||||
class ParkSetLoanAction final : public GameActionBase<GameCommand::SetCurrentLoan>
|
||||
{
|
||||
private:
|
||||
money32 _value{ MONEY32_UNDEFINED };
|
||||
|
@ -20,11 +20,11 @@ public:
|
|||
ParkSetLoanAction() = default;
|
||||
ParkSetLoanAction(money32 value);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ParkSetNameAction, GameCommand::SetParkName, GameActions::Result)
|
||||
class ParkSetNameAction final : public GameActionBase<GameCommand::SetParkName>
|
||||
{
|
||||
private:
|
||||
std::string _name;
|
||||
|
@ -20,11 +20,11 @@ public:
|
|||
ParkSetNameAction() = default;
|
||||
ParkSetNameAction(const std::string& name);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -19,7 +19,7 @@ enum class ParkParameter : uint8_t
|
|||
Count
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(ParkSetParameterAction, GameCommand::SetParkOpen, GameActions::Result)
|
||||
class ParkSetParameterAction final : public GameActionBase<GameCommand::SetParkOpen>
|
||||
{
|
||||
private:
|
||||
ParkParameter _parameter{ ParkParameter::Count };
|
||||
|
@ -38,7 +38,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(ParkSetResearchFundingAction, GameCommand::SetResearchFunding, GameActions::Result)
|
||||
class ParkSetResearchFundingAction final : public GameActionBase<GameCommand::SetResearchFunding>
|
||||
{
|
||||
private:
|
||||
// TODO change to std::optional when C++17
|
||||
|
@ -24,7 +24,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
// Clang format is broken for small game actions
|
||||
// clang-format off
|
||||
DEFINE_GAME_ACTION(PauseToggleAction, GameCommand::TogglePause, GameActions::Result)
|
||||
class PauseToggleAction final : public GameActionBase<GameCommand::TogglePause>
|
||||
{
|
||||
public:
|
||||
PauseToggleAction() = default;
|
||||
|
|
|
@ -19,7 +19,7 @@ enum class PeepPickupType : uint8_t
|
|||
Count
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(PeepPickupAction, GameCommand::PickupGuest, GameActions::Result)
|
||||
class PeepPickupAction final : public GameActionBase<GameCommand::PickupGuest>
|
||||
{
|
||||
private:
|
||||
PeepPickupType _type{ PeepPickupType::Count };
|
||||
|
@ -33,10 +33,10 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
private:
|
||||
void CancelConcurrentPickups(Peep * pickedPeep) const;
|
||||
void CancelConcurrentPickups(Peep* pickedPeep) const;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(PlaceParkEntranceAction, GameCommand::PlaceParkEntrance, GameActions::Result)
|
||||
class PlaceParkEntranceAction final : public GameActionBase<GameCommand::PlaceParkEntrance>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -23,7 +23,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(PlacePeepSpawnAction, GameCommand::PlacePeepSpawn, GameActions::Result)
|
||||
class PlacePeepSpawnAction final : public GameActionBase<GameCommand::PlacePeepSpawn>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _location;
|
||||
|
@ -22,7 +22,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(PlayerKickAction, GameCommand::KickPlayer, GameActions::Result)
|
||||
class PlayerKickAction final : public GameActionBase<GameCommand::KickPlayer>
|
||||
{
|
||||
private:
|
||||
NetworkPlayerId_t _playerId{ -1 };
|
||||
|
@ -23,7 +23,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(PlayerSetGroupAction, GameCommand::SetPlayerGroup, GameActions::Result)
|
||||
class PlayerSetGroupAction final : public GameActionBase<GameCommand::SetPlayerGroup>
|
||||
{
|
||||
private:
|
||||
NetworkPlayerId_t _playerId{ -1 };
|
||||
|
@ -23,7 +23,7 @@ public:
|
|||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -292,8 +292,8 @@ GameActions::Result::Ptr RideCreateAction::Execute() const
|
|||
|
||||
ride->num_circuits = 1;
|
||||
ride->mode = ride->GetDefaultMode();
|
||||
ride->SetMinCarsPerTrain(rideEntry->min_cars_in_train);
|
||||
ride->SetMaxCarsPerTrain(rideEntry->max_cars_in_train);
|
||||
ride->MinCarsPerTrain = rideEntry->min_cars_in_train;
|
||||
ride->MaxCarsPerTrain = rideEntry->max_cars_in_train;
|
||||
ride_set_vehicle_colours_to_random_preset(ride, _colour2);
|
||||
window_invalidate_by_class(WC_RIDE_LIST);
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideCreateAction, GameCommand::CreateRide, GameActions::Result)
|
||||
class RideCreateAction final : public GameActionBase<GameCommand::CreateRide>
|
||||
{
|
||||
private:
|
||||
ObjectEntryIndex _rideType{ OBJECT_ENTRY_INDEX_NULL };
|
||||
|
@ -23,13 +23,13 @@ public:
|
|||
RideCreateAction() = default;
|
||||
RideCreateAction(int32_t rideType, ObjectEntryIndex subType, int32_t colour1, int32_t colour2);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
int32_t GetRideType() const;
|
||||
int32_t GetRideObject() const;
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideDemolishAction, GameCommand::DemolishRide, GameActions::Result)
|
||||
class RideDemolishAction final : public GameActionBase<GameCommand::DemolishRide>
|
||||
{
|
||||
private:
|
||||
NetworkRideId_t _rideIndex{ RIDE_ID_NULL };
|
||||
|
@ -21,19 +21,19 @@ public:
|
|||
RideDemolishAction() = default;
|
||||
RideDemolishAction(ride_id_t rideIndex, uint8_t modifyType);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint32_t GetCooldownTime() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
private:
|
||||
GameActions::Result::Ptr DemolishRide(Ride * ride) const;
|
||||
GameActions::Result::Ptr DemolishRide(Ride* ride) const;
|
||||
money32 MazeRemoveTrack(const CoordsXYZD& coords) const;
|
||||
money32 DemolishTracks() const;
|
||||
GameActions::Result::Ptr RefurbishRide(Ride * ride) const;
|
||||
GameActions::Result::Ptr RefurbishRide(Ride* ride) const;
|
||||
money32 GetRefurbishPrice(const Ride* ride) const;
|
||||
money32 GetRefundPrice(const Ride* ride) const;
|
||||
};
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
#include "../world/Entrance.h"
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideEntranceExitPlaceAction, GameCommand::PlaceRideEntranceOrExit, GameActions::Result)
|
||||
class RideEntranceExitPlaceAction final : public GameActionBase<GameCommand::PlaceRideEntranceOrExit>
|
||||
{
|
||||
private:
|
||||
CoordsXY _loc;
|
||||
|
@ -26,11 +26,11 @@ public:
|
|||
RideEntranceExitPlaceAction(
|
||||
const CoordsXY& loc, Direction direction, ride_id_t rideIndex, StationIndex stationNum, bool isExit);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideEntranceExitRemoveAction, GameCommand::RemoveRideEntranceOrExit, GameActions::Result)
|
||||
class RideEntranceExitRemoveAction final : public GameActionBase<GameCommand::RemoveRideEntranceOrExit>
|
||||
{
|
||||
private:
|
||||
CoordsXY _loc;
|
||||
|
@ -23,11 +23,11 @@ public:
|
|||
RideEntranceExitRemoveAction() = default;
|
||||
RideEntranceExitRemoveAction(const CoordsXY& loc, ride_id_t rideIndex, StationIndex stationNum, bool isExit);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -24,7 +24,7 @@ enum class RideSetAppearanceType : uint8_t
|
|||
EntranceStyle
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(RideSetAppearanceAction, GameCommand::SetRideAppearance, GameActions::Result)
|
||||
class RideSetAppearanceAction final : public GameActionBase<GameCommand::SetRideAppearance>
|
||||
{
|
||||
private:
|
||||
NetworkRideId_t _rideIndex{ RIDE_ID_NULL };
|
||||
|
@ -36,11 +36,11 @@ public:
|
|||
RideSetAppearanceAction() = default;
|
||||
RideSetAppearanceAction(ride_id_t rideIndex, RideSetAppearanceType type, uint16_t value, uint32_t index);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideSetColourSchemeAction, GameCommand::SetColourScheme, GameActions::Result)
|
||||
class RideSetColourSchemeAction final : public GameActionBase<GameCommand::SetColourScheme>
|
||||
{
|
||||
private:
|
||||
CoordsXYZD _loc;
|
||||
|
@ -22,11 +22,11 @@ public:
|
|||
RideSetColourSchemeAction() = default;
|
||||
RideSetColourSchemeAction(const CoordsXYZD& location, track_type_t trackType, uint16_t newColourScheme);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideSetNameAction, GameCommand::SetRideName, GameActions::Result)
|
||||
class RideSetNameAction final : public GameActionBase<GameCommand::SetRideName>
|
||||
{
|
||||
private:
|
||||
NetworkRideId_t _rideIndex{ RIDE_ID_NULL };
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
RideSetNameAction() = default;
|
||||
RideSetNameAction(ride_id_t rideIndex, const std::string& name);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideSetPriceAction, GameCommand::SetRidePrice, GameActions::Result)
|
||||
class RideSetPriceAction final : public GameActionBase<GameCommand::SetRidePrice>
|
||||
{
|
||||
private:
|
||||
NetworkRideId_t _rideIndex{ RIDE_ID_NULL };
|
||||
|
@ -22,11 +22,11 @@ public:
|
|||
RideSetPriceAction() = default;
|
||||
RideSetPriceAction(ride_id_t rideIndex, money16 price, bool primaryPrice);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@ enum class RideSetSetting : uint8_t
|
|||
RideType,
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(RideSetSettingAction, GameCommand::SetRideSetting, GameActions::Result)
|
||||
class RideSetSettingAction final : public GameActionBase<GameCommand::SetRideSetting>
|
||||
{
|
||||
private:
|
||||
NetworkRideId_t _rideIndex{ RIDE_ID_NULL };
|
||||
|
@ -37,18 +37,18 @@ public:
|
|||
RideSetSettingAction() = default;
|
||||
RideSetSettingAction(ride_id_t rideIndex, RideSetSetting setting, uint8_t value);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
private:
|
||||
bool ride_is_mode_valid(Ride * ride) const;
|
||||
bool ride_is_valid_lift_hill_speed(Ride * ride) const;
|
||||
bool ride_is_mode_valid(Ride* ride) const;
|
||||
bool ride_is_valid_lift_hill_speed(Ride* ride) const;
|
||||
bool ride_is_valid_num_circuits() const;
|
||||
bool ride_is_valid_operation_option(Ride * ride) const;
|
||||
rct_string_id GetOperationErrorMessage(Ride * ride) const;
|
||||
bool ride_is_valid_operation_option(Ride* ride) const;
|
||||
rct_string_id GetOperationErrorMessage(Ride* ride) const;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(RideSetStatusAction, GameCommand::SetRideStatus, GameActions::Result)
|
||||
class RideSetStatusAction final : public GameActionBase<GameCommand::SetRideStatus>
|
||||
{
|
||||
private:
|
||||
NetworkRideId_t _rideIndex{ RIDE_ID_NULL };
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
RideSetStatusAction() = default;
|
||||
RideSetStatusAction(ride_id_t rideIndex, RideStatus status);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -19,7 +19,7 @@ enum class RideSetVehicleType : uint8_t
|
|||
Count,
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(RideSetVehicleAction, GameCommand::SetRideVehicles, GameActions::Result)
|
||||
class RideSetVehicleAction final : public GameActionBase<GameCommand::SetRideVehicles>
|
||||
{
|
||||
private:
|
||||
NetworkRideId_t _rideIndex{ RIDE_ID_NULL };
|
||||
|
@ -31,14 +31,14 @@ public:
|
|||
RideSetVehicleAction() = default;
|
||||
RideSetVehicleAction(ride_id_t rideIndex, RideSetVehicleType type, uint8_t value, uint8_t colour = 0);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
private:
|
||||
bool ride_is_vehicle_type_valid(Ride * ride) const;
|
||||
bool ride_is_vehicle_type_valid(Ride* ride) const;
|
||||
};
|
||||
|
|
|
@ -38,7 +38,7 @@ enum class ScenarioSetSetting : uint8_t
|
|||
Count
|
||||
};
|
||||
|
||||
DEFINE_GAME_ACTION(ScenarioSetSettingAction, GameCommand::EditScenarioOptions, GameActions::Result)
|
||||
class ScenarioSetSettingAction final : public GameActionBase<GameCommand::EditScenarioOptions>
|
||||
{
|
||||
private:
|
||||
ScenarioSetSetting _setting{ ScenarioSetSetting::Count };
|
||||
|
@ -57,7 +57,7 @@ public:
|
|||
return GameAction::GetActionFlags() | GameActions::Flags::AllowWhilePaused;
|
||||
}
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(SetCheatAction, GameCommand::Cheat, GameActions::Result)
|
||||
class SetCheatAction final : public GameActionBase<GameCommand::Cheat>
|
||||
{
|
||||
using ParametersRange = std::pair<std::pair<int32_t, int32_t>, std::pair<int32_t, int32_t>>;
|
||||
|
||||
|
@ -24,11 +24,11 @@ public:
|
|||
SetCheatAction() = default;
|
||||
SetCheatAction(CheatType cheatType, int32_t param1 = 0, int32_t param2 = 0);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(SetParkEntranceFeeAction, GameCommand::SetParkEntranceFee, GameActions::Result)
|
||||
class SetParkEntranceFeeAction final : public GameActionBase<GameCommand::SetParkEntranceFee>
|
||||
{
|
||||
private:
|
||||
money16 _fee{ MONEY16_UNDEFINED };
|
||||
|
@ -20,11 +20,11 @@ public:
|
|||
SetParkEntranceFeeAction() = default;
|
||||
SetParkEntranceFeeAction(money16 fee);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
#include "GameAction.h"
|
||||
|
||||
DEFINE_GAME_ACTION(SignSetNameAction, GameCommand::SetSignName, GameActions::Result)
|
||||
class SignSetNameAction final : public GameActionBase<GameCommand::SetSignName>
|
||||
{
|
||||
private:
|
||||
BannerIndex _bannerIndex{ BANNER_INDEX_NULL };
|
||||
|
@ -21,11 +21,11 @@ public:
|
|||
SignSetNameAction() = default;
|
||||
SignSetNameAction(BannerIndex bannerIndex, const std::string& name);
|
||||
|
||||
void AcceptParameters(GameActionParameterVisitor & visitor) override;
|
||||
void AcceptParameters(GameActionParameterVisitor& visitor) override;
|
||||
|
||||
uint16_t GetActionFlags() const override;
|
||||
|
||||
void Serialise(DataSerialiser & stream) override;
|
||||
void Serialise(DataSerialiser& stream) override;
|
||||
GameActions::Result::Ptr Query() const override;
|
||||
GameActions::Result::Ptr Execute() const override;
|
||||
};
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue