1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2025-12-10 09:32:29 +01:00

Merge branch 'develop'

This commit is contained in:
Tulio Leao
2025-06-07 05:43:09 -03:00
8530 changed files with 69055 additions and 62713 deletions

View File

@@ -150,7 +150,7 @@ jobs:
- name: Run check-changelog-formatting
run: scripts/check-changelog-formatting
g2dat:
name: g2.dat
name: Graphics .dat files
runs-on: ubuntu-latest
needs: build_variables
steps:
@@ -164,14 +164,19 @@ jobs:
mkdir -p "$GITHUB_WORKSPACE/bin"
tar -C "$GITHUB_WORKSPACE/bin" -xf tools.tar.gz
echo "$GITHUB_WORKSPACE/bin" >> $GITHUB_PATH
- name: Build g2.dat
- name: Build graphics .dat files
run: |
gxc build g2.dat OpenRCT2/resources/g2/sprites.json
- name: Upload artifacts
gxc build fonts.dat OpenRCT2/resources/fonts/sprites.json
gxc build tracks.dat OpenRCT2/resources/tracks/sprites.json
- name: Upload graphics .dat files
uses: actions/upload-artifact@v4
with:
name: g2-${{ needs.build_variables.outputs.name }}.dat
path: g2.dat
name: graphics-${{ needs.build_variables.outputs.name }}
path: |
g2.dat
fonts.dat
tracks.dat
windows:
name: Windows
runs-on: windows-latest
@@ -229,11 +234,11 @@ jobs:
run: |
mv files-signed/openrct2.com bin/openrct2.com
mv files-signed/openrct2.exe bin/openrct2.exe
- name: Download g2.dat on ARM64
- name: Download graphics .dat files on ARM64
if: matrix.platform == 'arm64'
uses: actions/download-artifact@v4
with:
name: g2-${{ needs.build_variables.outputs.name }}.dat
name: graphics-${{ needs.build_variables.outputs.name }}
path: bin/data
- name: Build artifacts
run: |
@@ -324,7 +329,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: ${{ matrix.cache_key }}
- name: Install GCC problem matcher
@@ -366,19 +371,14 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: ${{ matrix.cache_key }}
- name: Configure ccache
run: |
# See https://github.com/hendrikmuhs/ccache-action/issues/146
ccache --set-config=compiler_check=content
- name: Install GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master
- name: Build OpenRCT2
run: |
# NB: GitHub comes with `pkg-config` preinstalled on macOS images
HOMEBREW_NO_ANALYTICS=1 brew install ninja
# NB: GitHub comes with `pkg-config` and `ninja` preinstalled on macOS images
. scripts/setenv -q && build -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=on ${{ matrix.build_flags }}
- name: Build artifacts
run: |
@@ -464,7 +464,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: linux-${{ matrix.platform }}-${{ matrix.distro }}
- name: Get pre-reqs
@@ -494,7 +494,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: linux-appimage
- name: Install Clang 15
@@ -553,7 +553,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: linux-clang
- name: Install GCC problem matcher
@@ -569,7 +569,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: linux-clang
- name: Install GCC problem matcher
@@ -610,7 +610,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: android
- name: Install GCC problem matcher
@@ -638,7 +638,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.13
uses: hendrikmuhs/ccache-action@v1.2.18
with:
key: emscripten
- name: Install GCC problem matcher

2
.gitignore vendored
View File

@@ -24,6 +24,8 @@ libversion
# Downloaded or built data files
data/g2.dat
data/fonts.dat
data/tracks.dat
data/sequence
data/object
data/assetpack

View File

@@ -391,16 +391,31 @@ if(NOT DISABLE_GUI)
include("${ROOT_DIR}/src/openrct2-ui/CMakeLists.txt" NO_POLICY_SCOPE)
endif()
# g2
if (NOT (MACOS_BUNDLE AND (NOT CMAKE_OSX_ARCHITECTURES MATCHES "${SYSTEM_MACOS_ARCH}")))
add_custom_command(
OUTPUT g2.dat
COMMAND ./openrct2-cli sprite build ${CMAKE_BINARY_DIR}/g2.dat ${ROOT_DIR}/resources/g2/sprites.json
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
)
add_custom_target(g2 DEPENDS OpenRCT2::openrct2-cli g2.dat)
# graphics files (g2.dat and font.dat)
if (NOT CMAKE_CROSSCOMPILING)
set(graphics_files "g2" "fonts" "tracks")
foreach(graphics_file ${graphics_files})
set(output_file "${graphics_file}.dat")
set(json_file "${ROOT_DIR}/resources/${graphics_file}/sprites.json")
file(GLOB_RECURSE dependent_files CONFIGURE_DEPENDS "${ROOT_DIR}/resources/${graphics_file}/*")
add_custom_command(
OUTPUT ${output_file}
COMMAND ./openrct2-cli sprite build "${CMAKE_BINARY_DIR}/${output_file}" "${json_file}"
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
DEPENDS ${dependent_files}
)
list(APPEND output_files "${output_file}")
endforeach()
add_custom_target(graphics DEPENDS OpenRCT2::openrct2-cli ${output_files})
if(NOT DISABLE_GUI)
add_dependencies(openrct2 graphics)
endif()
else ()
message("Skipping g2.dat generation in macOS cross-compile")
message("Skipping graphics generation in cross-compile")
endif ()
# Include tests
@@ -422,9 +437,6 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS))
"${ROOT_DIR}/distribution/scripting.md"
"${ROOT_DIR}/distribution/openrct2.d.ts")
# CMake does not allow specifying a dependency chain which includes built-in
# targets, like `install`, so we have to trick it and execute dependency ourselves.
install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" --build \"${CMAKE_CURRENT_BINARY_DIR}\" --target g2)")
if (DOWNLOAD_TITLE_SEQUENCES)
# Checks if this version of the title sequences are already installed, updates if necessary
# if /data/sequence exists, it will overwrite this anyways (see `install(DIRECTORY "data/" ...)` below)
@@ -487,6 +499,8 @@ if (NOT MACOS_BUNDLE OR (MACOS_BUNDLE AND WITH_TESTS))
)")
endif ()
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/g2.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/fonts.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/tracks.dat" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
install(DIRECTORY "data/" DESTINATION "${CMAKE_INSTALL_DATADIR}/openrct2")
# even when building WITH_TESTS, none of the below install steps are required for OpenRCT2.app

View File

@@ -7,7 +7,6 @@ Includes all git commit authors. Aliases are GitHub usernames or community nickn
* Michał Janiszewski (janisozaur) - Programming
* Hielke Morsink (Broxzier) - Programming
* Tulio Paschoalin Leao (tupaschoal) - Programming
* Olivier Wervers (Oli414) - Lead OpenGraphics - Programming
* Matthias Moninger (ZehMatt) - Programming
* Karst van Galen Last (AuraSpecs) - Lead OpenSoundEffects & OpenMusic
* Michael Bernardi (mrmbernardi) - Programming
@@ -24,6 +23,7 @@ Includes all git commit authors. Aliases are GitHub usernames or community nickn
* (zsilencer)
* Richard Jenkins (rwjuk)
* Rik Smeets (rik-smeets)
* Olivier Wervers (Oli414)
## Long term contributors
Appreciation for long term contributors to the project having provided substantial work.

View File

@@ -2238,8 +2238,8 @@ STR_3228 :Legen Sie die Startpositionen{NEWLINE}der Besucher fest
STR_3229 :Blockbremsen können nicht unmittelbar nach der Station eingesetzt werden
STR_3230 :Blockbremsen können nicht unmittelbar hintereinander eingesetzt werden
STR_3231 :Blockbremsen können nicht unmittelbar nach der Anstiegsspitze eingesetzt werden
STR_3232 :Optionen - Finanzen
STR_3233 :Optionen - Besucher
STR_3232 :Szenariooptionen - Finanzen
STR_3233 :Szenariooptionen - Besucher
STR_3235 :Finanzoptionen anzeigen
STR_3236 :Besucheroptionen anzeigen
STR_3238 :Kein Geld
@@ -2283,7 +2283,7 @@ STR_3279 :Freier Eintritt/Pro Fahrt bezahlen
STR_3280 :Für Eintritt bezahlen/Gratis fahren
STR_3281 :{WINDOW_COLOUR_2}Eintrittspreis:
STR_3283 :Bahnen auswählen, die beibehalten werden sollen
STR_3285 :Beibehaltene Bahnen
STR_3285 :Szenariooptionen - Beibehaltene Bahnen
STR_3286 :Ziel für dieses Szenario auswählen
STR_3287 :{WINDOW_COLOUR_2}Ziel:
STR_3294 :Ändern …
@@ -2511,7 +2511,7 @@ STR_5265 :Auswählen, welche Inhaltsquellen{NEWLINE}angezeigt werden sollen
STR_5266 :Anzeige
STR_5267 :Sprache und Einheiten
STR_5268 :Audio
STR_5269 :Bedienung und Oberfläche
STR_5269 :Steuerung
STR_5270 :Sonstiges
STR_5272 :Kleine Szenerie
STR_5273 :Große Szenerie
@@ -3790,3 +3790,30 @@ STR_6747 :Präferenzen variieren (Standard)
STR_6748 :Nur weniger intensive Fahrgeschäfte
STR_6749 :Nur intensivere Fahrgeschäfte
STR_6750 :Auswählen, welche Art von Fahrgeschäft die neu erzeugten Besucher bevorzugen.
STR_6751 :Warteschlangen können nicht für Bahnübergänge benutzt werden!
STR_6752 :Szenariooptionen - Ziel
STR_6753 :Szenariooptionen - Szenariodetails
STR_6754 :Szenariooptionen - Landeinschränkungen
STR_6755 :Szenariooptionen anzeigen
STR_6756 :Szenariodetailoptionen anzeigen
STR_6757 :Landeinschränkungsoptionen anzeigen
STR_6758 :Darlehensoptionen
STR_6759 :Geschäftsmodell
STR_6760 :Einkünfte:
STR_6761 :Szenariodetails
STR_6762 :Oberfläche
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Speichern und Autospeichern
STR_6765 :Erweitert
STR_6766 :Leeren
STR_6767 :Fenster
STR_6768 :Rendern
STR_6769 :Verhalten
STR_6770 :Bildwiederholratenbegr.:
STR_6771 :Interne Geschw. (Standard)
STR_6772 :Vertikale Synchronisation
STR_6773 :Unbegrenzt
STR_6774 :Zeit seit letzter Inspektion
STR_6775 :{COMMA16} Minute
STR_6776 :{COMMA16} Minuten
STR_6777 :über 4 Stunden

View File

@@ -3810,3 +3810,15 @@ STR_6762 :Interface
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Saving and autosaves
STR_6765 :Advanced
STR_6766 :Clear
STR_6767 :Window
STR_6768 :Rendering
STR_6769 :Behaviour
STR_6770 :Frame rate limit:
STR_6771 :Internal speed (default)
STR_6772 :Vertical sync
STR_6773 :Unrestricted
STR_6774 :Time since last inspection
STR_6775 :{COMMA16} minute
STR_6776 :{COMMA16} minutes
STR_6777 :more than 4 hours

View File

@@ -2510,7 +2510,7 @@ STR_5265 :Elekti la enhavo-fontojn kiuj estas videblaj
STR_5266 :Ekrano
STR_5267 :Kulturo kaj Unuoj
STR_5268 :Aŭdaĵoj
STR_5269 :Regiloj kaj interfaco
STR_5269 :Regiloj
STR_5270 :Diversaĵoj
STR_5272 :Malgranda Pejzaĝo
STR_5273 :Granda Pejzaĝo
@@ -3789,7 +3789,7 @@ STR_6743 :Klimato
STR_6744 :{WINDOW_COLOUR_2}{UINT16}%
STR_6745 :{WINDOW_COLOUR_2}Intenseco-preferoj de gastoj:
STR_6746 :Neniuj preferoj
STR_6747 :Preferoj varias (defaŭlto)
STR_6747 :Preferoj varias (defaŭlta)
STR_6748 :Nur malpli intensaj atrakcioj
STR_6749 :Nur pli intensaj atrakcioj
STR_6750 :Elekti kian atrakcio-intensecon, ke nove generitaj gastoj preferas.
@@ -3804,3 +3804,19 @@ STR_6758 :Prunto-agordoj
STR_6759 :Komerca modelo
STR_6760 :Perlaboraĵoj:
STR_6761 :Detaloj de Scenaro
STR_6762 :Interfaco
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Konservado kaj aŭtokonservado
STR_6765 :Altnivela
STR_6766 :Vakigi
STR_6767 :Fenestro
STR_6768 :Bildigo
STR_6769 :Konduto
STR_6770 :Limo de bildrapido:
STR_6771 :Interna rapideco (defaŭlta)
STR_6772 :Vertikala sinkronigo
STR_6773 :Senlimigita
STR_6774 :Daŭro de lasta inspekto
STR_6775 :{COMMA16} minuto
STR_6776 :{COMMA16} minutoj
STR_6777 :pli ol 4 horoj

View File

@@ -2519,7 +2519,7 @@ STR_5265 :Choisir la source des objets visibles
STR_5266 :Affichage
STR_5267 :Langue et unités
STR_5268 :Audio
STR_5269 :Contrôles et interface
STR_5269 :Contrôles
STR_5270 :Divers
STR_5272 :Petits décors
STR_5273 :Grands décors
@@ -3814,3 +3814,19 @@ STR_6758 :Options demprunt
STR_6759 :Mode opérationnel
STR_6760 :Revenus :
STR_6761 :Détails du scénario
STR_6762 :Interface
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Enregistrement et sauvegardes automatiques
STR_6765 :Avancé
STR_6766 :Effacer
STR_6767 :Fenêtre
STR_6768 :Rendu
STR_6769 :Comportement
STR_6770 :Limite de fréquence dimage :
STR_6771 :Vitesse interne (par défaut)
STR_6772 :Synchronisation verticale
STR_6773 :Illimitée
STR_6774 :Temps depuis la dernière inspection
STR_6775 :{COMMA16} minute
STR_6776 :{COMMA16} minutes
STR_6777 :Plus de 4 heures

View File

@@ -2166,7 +2166,6 @@ STR_3136 :Advertencia: este aspecto crearase cun tipo de vehículo alternativ
STR_3137 :Seleccionar. Escenario próximo
STR_3138 :Restablecer selección.
STR_3139 :O cable de elevación non pode funcionar neste modo
STR_3140 :O cable do telecadeira debe comezar inmediatamente despois da estación
STR_3141 :Multicircuíto por atracción. non é posible cun cable de elevación
STR_3142 :{WINDOW_COLOUR_2}Capacidade: {BLACK}{STRINGID}
STR_3143 :Mostrar visitantes no mapa
@@ -2237,8 +2236,8 @@ STR_3228 :Establecer a posición inicial das persoas
STR_3229 :O bloque de freada non debe usarse despois da estación
STR_3230 :O bloque de freado non debe usarse despois do outro
STR_3231 :O bloque de freo non debe usarse despois do final da cadea de elevación.
STR_3232 :Opcións - Finanzas
STR_3233 :Opcións - Visitantes
STR_3232 :Opcións do escenario - Finanzas
STR_3233 :Opcións do escenario - Visitantes
STR_3235 :Opcións de financiamento
STR_3236 :Opcións de visitante
STR_3238 :Sen cartos
@@ -2282,7 +2281,7 @@ STR_3279 :Entrada gratuíta / Atraccións de pago
STR_3280 :Pagar para entrar / Atraccións gratuítas
STR_3281 :{WINDOW_COLOUR_2}Prezo de entrada:
STR_3283 :Selecciona as atraccións para conservar
STR_3285 :Atraccións preservadas
STR_3285 :Opcións do escenario - Atraccións preservadas
STR_3286 :Seleccione obxectivos para este escenario
STR_3287 :{WINDOW_COLOUR_2}Obxecto:
STR_3294 :Cambiar...
@@ -2511,7 +2510,7 @@ STR_5265 :Selecciona que contidos son visibles
STR_5266 :Gráficos
STR_5267 :Idioma e unidades
STR_5268 :Audio
STR_5269 :Interface e controis
STR_5269 :Controis
STR_5270 :Outras opcións
STR_5272 :Pequena decoración
STR_5273 :Decoración grande
@@ -3594,7 +3593,6 @@ STR_6547 :Todos os escenarios
STR_6548 :Mostrar pasamáns nas interseccións
STR_6549 :Non se poden seleccionar obxectos de compatibilidade!
STR_6550 :Inclúese esta entrada para garantir a compatibilidade con obxectos antigos ou danados. Non se pode seleccionar, só deseleccionar.
STR_6551 :Verde exército
STR_6552 :Melón
STR_6553 :Tan
@@ -3795,3 +3793,30 @@ STR_6747 :Preferencias variadas (por defecto)
STR_6748 :Só atraccións pouco intensas
STR_6749 :Só atraccións moi intensas
STR_6750 :Selecciona a intensidade de atracción que prefiren os novos visitantes.
STR_6751 :Non se poden usar camiños de cola para pasos a nivel!
STR_6752 :Opcións do escenario - Obxectivo
STR_6753 :Opcións do escenario - Detalles do escenario
STR_6754 :Opcións do escenario - Restricións de terras
STR_6755 :Amosa opcións do obxectivo
STR_6756 :Amosa opcións de detalles do escenario
STR_6757 :Amosa opcións de restricións de terras
STR_6758 :Opcións de préstamo
STR_6759 :Modelo de negocio
STR_6760 :Ganancias:
STR_6761 :Detalles do escenario
STR_6762 :Interface
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Gardar e gardados automáticos
STR_6765 :Avanzado
STR_6766 :Limpar
STR_6767 :Xanela
STR_6768 :Renderizado
STR_6769 :Comportamento
STR_6770 :Límite de fotogramas:
STR_6771 :Velocidade interna (por defecto)
STR_6772 :Sincronización vertical
STR_6773 :Sen restricións
STR_6774 :Tempo desde a última inspección
STR_6775 :{COMMA16} minuto
STR_6776 :{COMMA16} minutos
STR_6777 :máis de 4 horas

View File

@@ -99,6 +99,8 @@ STR_0094 :Egysínű hullámvasút
STR_0095 :Alpesi hullámvasút
STR_0096 :Klasszikus fa hullámvasút
STR_0097 :Klasszikus álló hullámvasút
STR_0098 :LSM kilövéses hullámvasút
STR_0099 :Klasszikus fa csavart hullámvasút
STR_0512 :Egy kompakt hullámvasút spirális felvonószakasszal és sima, csavaros esésekkel.
STR_0513 :Egy átforduló hullámvasút, amelyen az utasok álló helyzetben utaznak
STR_0514 :A hullámvasút pályája alatt felfüggesztett vonatok oldalt kilengenek a kanyarokban
@@ -183,6 +185,8 @@ STR_0604 :Az utasok egymás mögött utaznak egy keskeny, egysínű pályán,
STR_0605 :Az utasok egy kanyargós acélpályán szánkóznak lefelé, fékezéssel szabályozva a sebességüket
STR_0606 :Egy régebbi stílusú, fából készült hullámvasút gyors és durva utazással, rengeteg légi idővel, némi oldalirányú G-vel, és úgy tervezve, hogy „kontrollvesztettség” élményét nyújtsa
STR_0607 :Egy intenzív, régebbi stílusú acél átforduló hullámvasút, amelyen az utasok álló helyzetben utaznak
STR_0608 :A hullámvasút szerelvényeit lineáris szinkronmotorok gyorsítják fel, miközben átszáguldanak a szűk kanyarokon és éles fordulókon
STR_0609 :Régi stílusú fa hullámvasút, amely gyors és rázós utazást kínál csuklós szerelvényekkel, rengeteg súlytalanság-élménnyel és kanyargós pályaszakaszokkal
STR_0767 :Vendég {INT32}
STR_0768 :Mindenes {INT32}
STR_0769 :Gépész {INT32}
@@ -2194,7 +2198,7 @@ STR_3188 :Úti hirdetőtáblák
STR_3189 :Régi típusú utak
STR_3190 :Úti extrák
STR_3191 :Díszletcsoportok
STR_3192 :Park bejárata
STR_3192 :Park bejáratok
STR_3193 :Víz
STR_3195 :Találmányok listája
STR_3196 :{WINDOW_COLOUR_2}Kutatási csoport: {BLACK}{STRINGID}
@@ -2233,8 +2237,8 @@ STR_3228 :Kezdő pozíciók megadása az emberek számára
STR_3229 :Blokkolófékek nem használhatóak közvetlenül az állomás után
STR_3230 :Blokkolófékek nem használhatóak közvetlenül egymás után
STR_3231 :Blokkolófékek nem használhatóak közvetlenül ennek felvonószakasznak a csúcsa után
STR_3232 :Beállítások - pénzügyi
STR_3233 :Beállítások - vendégek
STR_3232 :Pálya beállítások - Pénzügyi
STR_3233 :Pálya beállítások - Vendégek
STR_3235 :Pénzügyi beállítások
STR_3236 :A vendégek beállításai
STR_3238 :Nem kell pénz
@@ -2278,7 +2282,7 @@ STR_3279 :Ingyenes parkbelépő / Fizetős játékok
STR_3280 :Fizetős parkbelépő / Ingyenes játékok
STR_3281 :{WINDOW_COLOUR_2}Belépési díj:
STR_3283 :A műemlékvédelem alá eső játékok kiválasztása
STR_3285 :Védett játékok
STR_3285 :Pálya beállítások - Védett játékok
STR_3286 :A pálya céljának kiválasztása
STR_3287 :{WINDOW_COLOUR_2}Cél:
STR_3294 :Változtat…
@@ -2507,7 +2511,7 @@ STR_5265 :A látható tartalomforrások kiválasztása
STR_5266 :Képernyő
STR_5267 :Kultúra és egységek
STR_5268 :Hang
STR_5269 :Irányítás és felhasználói felület
STR_5269 :Irányítás
STR_5270 :Egyéb
STR_5272 :Kis díszletek
STR_5273 :Nagy díszletek
@@ -2585,7 +2589,7 @@ STR_5368 :Ütközés törlése
STR_5371 :Objektumok kiválasztása
STR_5372 :Jobb egérgombos húzás invertálása
STR_5373 :Név {STRINGID}
STR_5374 :Dátum {STRINGID}
STR_5374 :Módosítás dátuma {STRINGID}
STR_5375 :▲
STR_5376 :▼
STR_5404 :A név már létezik
@@ -3196,7 +3200,7 @@ STR_6102 :A játékok értéke nem csökken az idő múlásával, így a vend
STR_6103 :Ez a beállítás le van tiltva hálózati játék alatt.
STR_6105 :Hiperhullámvasút
STR_6107 :Monster Truck-ok
STR_6109 :Hiper-csavaró
STR_6109 :Hiper-csavart hullámvasút
STR_6111 :Klasszikus mini hullámvasút
STR_6113 :Magas, nem forduló hullámvasút nagy esésekkel, nagy sebességgel és kényelmes vonatokkal, csak biztonsági rudas rögzítéssel
STR_6115 :Motoros óriás 4x4-es teherautók, amelyek meredek lejtőkön is felhajtanak
@@ -3580,7 +3584,7 @@ STR_6537 :Normál utak lehetnek várósorok
STR_6538 :Megjeleníti a normál utakat a várósorok legördülő menüjében az Utak ablakon belül.
STR_6539 :Fék zárva
STR_6540 :{WINDOW_COLOUR_2}Külön köszönet a következő vállalatoknak, hogy engedélyezték hasonlóságuk használatát:
STR_6541 :{WINDOW_COLOUR_2}Rocky Mountain Construction Group, Josef Wiegand GmbH & Co. KG
STR_6541 :{WINDOW_COLOUR_2}Rocky Mountain Construction Group, Josef Wiegand GmbH & Co. KG, Intamin Amusement Rides Int. Corp. Est.
STR_6542 :Közreműködők
STR_6543 :Közreműködők…
STR_6544 :A kölcsön nem lehet negatív!
@@ -3749,3 +3753,71 @@ STR_6706 :{WINDOW_COLOUR_2}Jelenlegi képfájl: {BLACK}{STRING}
STR_6707 :(nincs kiválasztva)
STR_6708 :Simítási erősség
STR_6709 :Add meg a simítási erősséget {COMMA16} és {COMMA16} között
STR_6710 :Stabil rendezés
STR_6711 :Fájlnév:
STR_6712 :Mentés
STR_6713 :{COMMA32} {STRINGID}
STR_6714 :Fájlnév
STR_6715 :Módosítás dátuma
STR_6716 :Fájlméret
STR_6717 :Fájlméret {STRINGID}
STR_6718 :Vendég animációk
STR_6719 :Legalább egy vendég animációs objektumot kell kiválasztani
STR_6720 :Legalább egy mindenes animációs objektumot kell kiválasztani
STR_6721 :Legalább egy gépész animációs objektumot kell kiválasztani
STR_6722 :Legalább egy biztonsági őr animációs objektumot kell kiválasztani
STR_6723 :Legalább egy szórakoztató animációs objektumot kell kiválasztani
STR_6724 :Pálya szövegek
STR_6725 :X:
STR_6726 :Y:
STR_6727 :Merülőhurok (balra)
STR_6728 :Merülőhurok (jobbra)
STR_6729 :A kábeles felvonószakasznak közvetlenül az állomás vagy a blokkoló fék után kell kezdődnie
STR_6730 :Emscripten-adatok exportálása
STR_6731 :Emscripten-adatok importálása
STR_6732 :Gomb megjelenítése az eszköztáron a nézet óramutató járásával ellentétes elforgatásához
STR_6733 :Átlátszó
STR_6734 :A vágási magasságon vagy afölött levő térképelemek átlátszóan jelennek meg
STR_6735 :Ugrás a szülőmappára
STR_6736 :Előnézet
STR_6737 :Nincs előnézet
STR_6738 :{WINDOW_COLOUR_2}Park értékelése: {BLACK}{UINT16}
STR_6739 :{WINDOW_COLOUR_2}Dátum: {BLACK}{STRINGID}
STR_6740 :{WINDOW_COLOUR_2}Pénz: {BLACK}{CURRENCY2DP}
STR_6741 :{WINDOW_COLOUR_2}Játékok száma: {BLACK}{UINT16}
STR_6742 :{WINDOW_COLOUR_2}Vendégek száma: {BLACK}{UINT16}
STR_6743 :Éghajlat
STR_6744 :{WINDOW_COLOUR_2}{UINT16}%
STR_6745 :Vendégek intenzitási preferenciái:
STR_6746 :Nincsenek preferenciák
STR_6747 :Változó preferenciák (alapértelmezett)
STR_6748 :Csak kevésbé intenzív játékok
STR_6749 :Csak intenzívebb játékok
STR_6750 :Válaszd ki, hogy az új vendégek milyen intenzitású játékokat preferáljanak
STR_6751 :A várakozási útvonalak nem használhatók szintbeli kereszteződéseknél!
STR_6752 :Pálya beállítások Cél
STR_6753 :Pálya beállítások Pálya részletei
STR_6754 :Pálya beállítások Területkorlátozások
STR_6755 :Cél beállításai
STR_6756 :Pálya részleteinek beállításai
STR_6757 :Területkorlátozási beállítások
STR_6758 :Kölcsön beállításai
STR_6759 :Üzleti modell
STR_6760 :Bevételek:
STR_6761 :Pálya részletei
STR_6762 :Felhasználói felület
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Mentés és automatikus mentés
STR_6765 :Haladó
STR_6766 :Törlés
STR_6767 :Ablak
STR_6768 :Renderelés
STR_6769 :Viselkedés
STR_6770 :FPS-korlát:
STR_6771 :Belső sebesség (alapért.)
STR_6772 :Vertikális szinkron
STR_6773 :Korlátlan
STR_6774 :Ellenőrzés óta eltelt idő
STR_6775 :{COMMA16} perc
STR_6776 :{COMMA16} perc
STR_6777 :több mint 4 óra

View File

@@ -2166,7 +2166,6 @@ STR_3136 :Attenzione: questo progetto verrà costruito con un veicolo alterna
STR_3137 :Seleziona uno scenario vicino
STR_3138 :Ripristina la selezione
STR_3139 :Il cavo di traino non può funzionare in questa modalità operativa
STR_3140 :La salita per il traino deve iniziare subito dopo la stazione
STR_3141 :Con la salita per il traino non è possibile usare la modalità multi-circuito.
STR_3142 :{WINDOW_COLOUR_2}Capienza: {BLACK}{STRINGID}
STR_3143 :Mostra le persone sulla mappa
@@ -2198,7 +2197,7 @@ STR_3188 :Cartelli dei percorsi
STR_3189 :Sentieri classici
STR_3190 :Percorsi (extra)
STR_3191 :Gruppi di scenari
STR_3192 :Entrata del parco
STR_3192 :Entrate del parco
STR_3193 :Acqua
STR_3195 :Lista delle invenzioni
STR_3196 :{WINDOW_COLOUR_2}Gruppo di ricerca: {BLACK}{STRINGID}
@@ -2237,8 +2236,8 @@ STR_3228 :Fissa le posizioni iniziali delle persone
STR_3229 :I freni di blocco non possono essere usati immediatamente dopo la stazione
STR_3230 :I freni di blocco non possono essere usati luno immediatamente dopo laltro
STR_3231 :I freni di blocco non possono essere usati immediatamente dopo la cima di questa salita di traino
STR_3232 :Opzioni - Finanze
STR_3233 :Opzioni - Visitatori
STR_3232 :Opzioni scenario - Finanze
STR_3233 :Opzioni scenario - Visitatori
STR_3235 :Mostra le opzioni sulle finanze
STR_3236 :Mostra le opzioni sui visitatori
STR_3238 :Niente denaro
@@ -2282,7 +2281,7 @@ STR_3279 :Ingresso gratis / Paga attrazioni
STR_3280 :Paga ingresso / Attrazioni gratis
STR_3281 :{WINDOW_COLOUR_2}Prezzo dingresso:
STR_3283 :Seleziona le attrazioni da proteggere
STR_3285 :Attrazioni protette
STR_3285 :Opzioni scenario - Attrazioni protette
STR_3286 :Seleziona lobiettivo di questo scenario
STR_3287 :{WINDOW_COLOUR_2}Obiettivo:
STR_3294 :Modifica…
@@ -2515,7 +2514,7 @@ STR_5265 :Seleziona quali risorse sono visibili
STR_5266 :Display
STR_5267 :Cultura and Unità
STR_5268 :Audio
STR_5269 :Controlli e interfaccia
STR_5269 :Controlli
STR_5270 :Varie
STR_5272 :Scenari piccoli
STR_5273 :Scenari grandi
@@ -2593,7 +2592,7 @@ STR_5368 :Reset stato incidenti
STR_5371 :Selezione oggetti
STR_5372 :Inverti direzione trascinamento con clic destro
STR_5373 :Nome {STRINGID}
STR_5374 :Data {STRINGID}
STR_5374 :Data di modifica {STRINGID}
STR_5375 :▲
STR_5376 :▼
STR_5404 :Il nome è già utilizzato
@@ -3758,4 +3757,72 @@ STR_6706 :{WINDOW_COLOUR_2}File immagine attuale: {BLACK}{STRING}
STR_6707 :(nessuno selezionato)
STR_6708 :Forza addolcimento
STR_6709 :Inserisci una forza addolcimento tra {COMMA16} e {COMMA16}
STR_6710 :Ordinamento stabile
STR_6711 :Nome file:
STR_6712 :Salva
STR_6713 :{COMMA32} {STRINGID}
STR_6714 :Nome file
STR_6715 :Data di modifica
STR_6716 :Dimensione file
STR_6717 :Dimensione file {STRINGID}
STR_6718 :Animazioni persona
STR_6719 :È necessario selezionare almeno un oggetto animazione persona per i visitatori
STR_6720 :È necessario selezionare almeno un oggetto animazione persona per i tuttofare
STR_6721 :È necessario selezionare almeno un oggetto animazione persona per i meccanici
STR_6722 :È necessario selezionare almeno un oggetto animazione persona per le guardie di sicurezza
STR_6723 :È necessario selezionare almeno un oggetto animazione persona per gli intrattenitori
STR_6724 :Testi scenario
STR_6725 :X:
STR_6726 :Y:
STR_6727 :Dive loop (sinistra)
STR_6728 :Dive loop (destra)
STR_6729 :La salita con catena di traino deve iniziare immediatamente dopo la stazione o un freno di blocco
STR_6730 :Esporta i dati emscripten
STR_6731 :Importa i dati emscripten
STR_6732 :Mostra un bottone nella barra strumenti per ruotare la visuale in senso antiorario
STR_6733 :Vedi attraverso
STR_6734 :Gli elementi della mappa che sono allaltezza di taglio o più in alto sono mostrati traslucidi.
STR_6735 :Sali alla cartella superiore
STR_6736 :Anteprima
STR_6737 :Nessuna anteprima disponibile
STR_6738 :{WINDOW_COLOUR_2}Valore parco: {BLACK}{UINT16}
STR_6739 :{WINDOW_COLOUR_2}Data: {BLACK}{STRINGID}
STR_6740 :{WINDOW_COLOUR_2}Contanti: {BLACK}{CURRENCY2DP}
STR_6741 :{WINDOW_COLOUR_2}Num. attraz.: {BLACK}{UINT16}
STR_6742 :{WINDOW_COLOUR_2}Num. ospiti: {BLACK}{UINT16}
STR_6743 :Clima
STR_6744 :{WINDOW_COLOUR_2}{UINT16}%
STR_6745 :{WINDOW_COLOUR_2}Preferenze intensità per gli ospiti:
STR_6746 :Nessuna preferenza
STR_6747 :Preferenze varie (predef.)
STR_6748 :Solo attrazioni poco intense
STR_6749 :Solo attrazioni più intense
STR_6750 :Seleziona quale tipo di intensità attrazioni preferiscono i nuovi ospiti generati.
STR_6751 :I percorsi per le code non possono essere usati per i passaggi a livello!
STR_6752 :Opzioni scenario - Obiettivo
STR_6753 :Opzioni scenario - Dettagli scenario
STR_6754 :Opzioni scenario - Restrizioni terreno
STR_6755 :Mostra opzioni obiettivo
STR_6756 :Mostra opzioni dettagli scenario
STR_6757 :Mostra opzioni restrizioni terreno
STR_6758 :Opzioni prestito
STR_6759 :Modello di business
STR_6760 :Guadagni:
STR_6761 :Dettagli scenario
STR_6762 :Interfaccia
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Salvataggi e auto-salvataggi
STR_6765 :Avanzate
STR_6766 :Svuota
STR_6767 :Finestra
STR_6768 :Render
STR_6769 :Comportamento
STR_6770 :Limite freq. fotogrammi:
STR_6771 :Velocità interna (predef.)
STR_6772 :Sincr. verticale
STR_6773 :Senza limiti
STR_6774 :Tempo dallultima ispezione
STR_6775 :{COMMA16} minuto
STR_6776 :{COMMA16} minuti
STR_6777 :più di 4 ore

View File

@@ -1868,7 +1868,7 @@ STR_2537 :Clear
STR_2538 :Enter
STR_2543 :Alt/Menu
STR_2544 :Pause
STR_2545 :Caps
STR_2545 :CapsLock
STR_2552 :ESC
STR_2557 :스페이스
STR_2558 :PgUp
@@ -3808,3 +3808,18 @@ STR_6760 :수입원:
STR_6761 :시나리오 상세 설정
STR_6751 :대기줄에 건널목을 만들 수 없습니다!
STR_6762 :인터페이스
STR_6763 :롤러코스터 타이쿤 1
STR_6764 :저장 및 자동저장
STR_6765 :고급
STR_6766 :초기화
STR_6767 :창
STR_6768 :렌더링
STR_6769 :행동
STR_6770 :FPS 제한:
STR_6771 :내부 속도 (기본값)
STR_6772 :수직 동기화
STR_6773 :제한 없음
STR_6774 :마지막 점검 이후 지난 시간
STR_6775 :{COMMA16}분
STR_6776 :{COMMA16}분
STR_6777 :4시간 이상

View File

@@ -3804,3 +3804,18 @@ STR_6759 :Bedrijfsmodel
STR_6760 :Inkomen:
STR_6761 :Scenariodetails
STR_6762 :Interface
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Opslaan en autosaves
STR_6765 :Geavanceerd
STR_6766 :Wissen
STR_6767 :Venster
STR_6768 :Rendering
STR_6769 :Gedrag
STR_6770 :Frames beperken tot
STR_6771 :Interne snelheid (standaard)
STR_6772 :Verticale synchronisatie
STR_6773 :Niet beperken
STR_6774 :Laatste inspectie
STR_6775 :{COMMA16} minuut geleden
STR_6776 :{COMMA16} minuten geleden
STR_6777 :meer dan 4 uur geleden

View File

@@ -2510,7 +2510,7 @@ STR_5265 :Selecione quais fontes de conteúdo são visíveis
STR_5266 :Exibição
STR_5267 :Idioma e Unidades
STR_5268 :Áudio
STR_5269 :Controles e interface
STR_5269 :Controles
STR_5270 :Variados
STR_5272 :Cenário Pequeno
STR_5273 :Cenário Grande
@@ -3804,3 +3804,19 @@ STR_6758 :Opções de empréstimo
STR_6759 :Modelo de negócios
STR_6760 :Proventos:
STR_6761 :Detalhes do cenário
STR_6762 :Interface
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Salvamento e autosalvamentos
STR_6765 :Avançado
STR_6766 :Limpar
STR_6767 :Janela
STR_6768 :Renderização
STR_6769 :Comportamento
STR_6770 :Limite da taxa de quadros:
STR_6771 :Velocidade interna (padrão)
STR_6772 :Sincronização vertical
STR_6773 :Irrestrita
STR_6774 :Tempo desde a última inspeção
STR_6775 :{COMMA16} minuto
STR_6776 :{COMMA16} minutos
STR_6777 :mais de 4 horas

View File

@@ -3793,3 +3793,18 @@ STR_6759 :Бизнес-модель
STR_6760 :Заработок:
STR_6761 :Подробности сценария
STR_6762 :Интерфейс
STR_6763 :RollerCoaster Tycoon 1
STR_6764 :Сохранённые игры и автосохранение
STR_6765 :Дополнительно
STR_6766 :Очистить
STR_6767 :Окно
STR_6768 :Отображение
STR_6769 :Поведение
STR_6770 :Ограничение частоты кадров:
STR_6771 :Внутренняя скорость (умолч.)
STR_6772 :Вертикальная синхронизация
STR_6773 :Без ограничения
STR_6774 :Время с последней инспекции
STR_6775 :{COMMA16} минута
STR_6776 :{COMMA16} минут
STR_6777 :более 4 часов

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,10 @@
{
"scenario_name": "Cemetery Ridge",
"sha256": "9401f88e1dfdc5f7e6e4759271ac8dea3fc499c2fb21cdbf42567d876a91641a",
"rides": [
{
"id": 0,
"operation": "swap_entrance_exit"
}
]
}

View File

@@ -233,3 +233,7 @@
'62268223a1539c92b7494973263457c9e9bf386c1e68eef21d377854f0ac0e38'],
'Wacky Waikiki': ['72cf3d2',
'72cf3d220740fd64f7681d3533320598cf6d3b71dff484bc43045e8d9d7a1a4b'],
// UCES Scenario names to hashes
'Cemetery Ridge': ['9401f88',
'9401f88e1dfdc5f7e6e4759271ac8dea3fc499c2fb21cdbf42567d876a91641a'],

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
uniform vec4 uPalette[256];
uniform usampler2D uTexture;

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
in vec4 vPosition;
in vec2 vTextureCoordinate;

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
// clang-format off
uniform usampler2D uOpaqueTex;

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
in vec4 vPosition;
in vec2 vTextureCoordinate;

View File

@@ -0,0 +1,11 @@
#version 330 core
in vec2 fTextureCoordinate;
out vec4 fragColor;
uniform sampler2D uTexture;
void main()
{
fragColor = texture(uTexture, fTextureCoordinate);
}

View File

@@ -0,0 +1,17 @@
#version 330 core
in vec2 vPosition;
in vec2 vTextureCoordinate;
out vec2 fTextureCoordinate;
uniform vec4 uSourceRect;
uniform vec2 uTextureSize;
void main()
{
gl_Position = vec4(vPosition, 0.0, 1.0);
vec2 srcPos = vec2(uSourceRect.xy);
vec2 srcSize = vec2(uSourceRect.zw);
fTextureCoordinate = (srcPos + vTextureCoordinate * srcSize) / uTextureSize;
}

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
flat in uint fColour;

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
// Allows for about 8 million draws per frame
const float DEPTH_INCREMENT = 1.0 / float(1u << 22u);

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
// clang-format off
const int MASK_REMAP_COUNT = 3;

View File

@@ -1,4 +1,4 @@
#version 150
#version 330 core
// Allows for about 8 million draws per frame
const float DEPTH_INCREMENT = 1.0 / float(1u << 22u);

View File

@@ -1,3 +1,50 @@
0.4.23 (in development)
------------------------------------------------------------------------
- Feature: [#22476] “Time since last inspection” statistic is available in the rides window.
- Feature: [#24313] [Plugin] Add API for setting a ride vehicles sprite to a smoke plume.
- Improved: [#24345] Vehicle fallback sprites are less likely to glitch with the track.
- Improved: [#24362, #24491] The Windows installer is now translated as well.
- Improved: [#24364] Improve the fallback vehicle sprites for Zero G Rolls, and allow small ones to be built without cheats if the fallbacks are available.
- Improved: [#24368] Clicking the in-game update notication now leads to a more user-friendly download page.
- Improved: [#24400] Ride list in preservation window is now sorted alphabetically.
- Improved: [#24409] Steam installs of RCT Classic are now detected automatically.
- Improved: [#24413] Better performance when moving the viewport on Windows and Linux platforms.
- Improved: [#24417] Improve the fallback vehicle sprites for Dive Loops.
- Improved: [#24433] The ride, new ride, scenery, path, viewport, park and tool windows no longer redraw every frame if they have not changed.
- Improved: [#24467] Apply tweening only to on-screen entities when not zoomed out for better performance with uncapped FPS.
- Improved: [#24474] More efficiently search viewports when playing Audio.
- Improved: [#24479] More descriptive error messages for `set` commands in the in-game console.
- Improved: [#24563] The Linux .desktop file will now request the more powerful dedicated GPU on hybrid graphics systems.
- Change: [#24342, #24484] g2.dat is now split into g2.dat, fonts.dat and tracks.dat.
- Change: [#24362] The Windows installer now prevents installing to the same folder as RollerCoaster Tycoon 2 or Classic.
- Change: [#24418] Small & Large Zero G Rolls can now be built on the LIM Launched RC without cheats if vehicle sprites are available.
- Fix: [#5269] Font bugs when using the Russian release of RCT2 as the base game.
- Fix: [#11071, #22958] The virtual floor does not always draw correctly.
- Fix: [#18220] Some custom RCT1 scenarios are detected as competition DLC scenarios.
- Fix: [#20095] UCES Halloween - Cemetery Ridge scenario has mismatched entrance/exit on haunted house.
- Fix: [#20158] Custom animated scenery .DATs with frame offsets draw a random sprite at the end of their animation.
- Fix: [#22628] Potential crash while rebuilding the scenario index.
- Fix: [#23289] Dodgems and Flying Saucer cars can spawn on top of each other when the ride is opened.
- Fix: [#24332] Banner font renders differently when using RCT Classic as the base game.
- Fix: [#24343] Large gently sloped turns are buildable without cheats when the vehicles do not have sprites for them.
- Fix: [#24346] Possible crash during line drawing in OpenGL mode.
- Fix: [#24353] Show dirty visuals is off by one pixel and does not work correctly with higher framerates.
- Fix: [#24362] When upgrading from an older version on Windows, old versions of official objects are not always removed.
- Fix: [#24366] Zero G Rolls have some incorrect vehicle yaw rotations.
- Fix: [#24371] Fix divide by zero in the scenery window when there is no scenery.
- Fix: [#24378] Prevent ride and stall statistics from overflowing.
- Fix: [#24388] Shortcut keys are not localised based on the users language settings.
- Fix: [#24403] Park fences draw underneath and through opaque water.
- Fix: [#24406] The network status window uses an undefined string for its title.
- Fix: [#24444] In the object load error window, the guide text overlaps when the title bar is enlarged.
- Fix: [#24446] [Plugin] Fix regression breaking the track iterator on specific track pieces.
- Fix: [#24447] Shortcut list is not refreshed when changing language.
- Fix: [#24448] Shortcuts involving the Caps Lock key are wrongly localised to NumPad Dot.
- Fix: [#24464] Window and viewport visibility is not calculated correctly causing minor performance issues.
- Fix: [#24488] Objects are not always redrawn immediately when they are reloaded from the Object Selection window.
- Fix: [#24544] RCT1 Maze designs with wooden walls are not imported correctly.
- Fix: [#24567] Long flat-to-steep wooden mine support sprites don't connect to flat supports exactly.
0.4.22 (2025-05-04)
------------------------------------------------------------------------
- Feature: [#24206] [Plugin] Add APIs for breaking down rides, reading the current breakdown, and for fixing broken down rides.

View File

@@ -39,3 +39,4 @@ Comment[zh_CN]=过山车大亨2(RollerCoaster Tycoon 2)的开源重新开发版
Comment[zh_TW]=重新開發並開放源碼的模擬樂園2 (RollerCoaster Tycoon 2)。
Categories=Game;Simulation;
Keywords=openrct2;rct2;rct;roller;coaster;tycoon;simulation;
PrefersNonDefaultGPU=true

View File

@@ -2922,6 +2922,11 @@ declare global {
*/
isReversed: boolean;
/**
* Whether to draw the car sprite as a smoke plume.
*/
isCrashed: boolean;
/**
* The colour of the car.
*/

View File

@@ -1,8 +1,9 @@
Unicode True
!define APPNAME "OpenRCT2"
!define APPVERSION "${APPV_MAIN}${APPV_EXTRA}"
!define APPVERSIONINTERNAL "${APPV_MAIN}.0"
!define APPNAMEANDVERSION "${APPNAME} ${APPVERSION}"
!define APPURLLINK "https://github.com/OpenRCT2/OpenRCT2"
!define APPURLLINK "https://openrct2.io"
!define OPENRCT2_EXE "openrct2.exe"
!define OPENRCT2_COM "openrct2.com"
@@ -18,8 +19,6 @@
InstallDir "$PROGRAMFILES64\OpenRCT2\"
!endif
!define SUPPORTED_OS "Windows 7 and later"
; Define root variable relative to installer
!define PATH_ROOT "..\..\"
!define BINARY_DIR "${PATH_ROOT}bin"
@@ -30,21 +29,17 @@
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP "top.bmp"
BrandingText "OpenRCT2 Installer"
BrandingText "$(lsBrandingText)"
SetCompressor LZMA
; Version Info
VIProductVersion "${APPVERSIONINTERNAL}"
VIAddVersionKey "ProductName" "OpenRCT2 ${PLATFORM} Installer for ${SUPPORTED_OS}"
VIAddVersionKey "Comments" "Installs ${APPNAMEANDVERSION}"
VIAddVersionKey "CompanyName" "OpenRCT2 Developers"
VIAddVersionKey "FileDescription" "Installs ${APPNAMEANDVERSION}"
VIAddVersionKey "ProductVersion" "${APPVERSION}"
VIAddVersionKey "InternalName" "InstOpenRCT2-${APPARCH}"
VIAddVersionKey "FileVersion" "${APPVERSION}-${APPARCH}"
VIAddVersionKey "LegalCopyright" " "
; Main Install settings
Name "${APPNAMEANDVERSION} ${PLATFORM} for ${SUPPORTED_OS}"
Name "${APPNAMEANDVERSION}"
; NOTE: Keep trailing backslash!
InstallDirRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenRCT2" "Install Folder"
@@ -76,6 +71,7 @@ Var SHORTCUTS
!define MUI_COMPONENTSPAGE_SMALLDESC
!insertmacro MUI_PAGE_COMPONENTS
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE DoNotInstallInRCT2Folder
!insertmacro MUI_PAGE_DIRECTORY
ManifestDPIAware true
@@ -91,10 +87,10 @@ ManifestDPIAware true
!insertmacro MUI_PAGE_INSTFILES
!define MUI_FINISHPAGE_TITLE_3LINES
!define MUI_FINISHPAGE_RUN_TEXT "Run ${APPNAMEANDVERSION} now!"
!define MUI_FINISHPAGE_RUN_TEXT "$(lsRunNow)"
!define MUI_FINISHPAGE_RUN
!define MUI_FINISHPAGE_RUN_FUNCTION PageFinishRun
!define MUI_FINISHPAGE_LINK "Visit the OpenRCT2 site for more information"
!define MUI_FINISHPAGE_LINK "$(lsFinishPageLink)"
!define MUI_FINISHPAGE_LINK_LOCATION "${APPURLLINK}"
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\readme.txt"
@@ -102,14 +98,42 @@ ManifestDPIAware true
!define MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT DisableBack
!insertmacro MUI_PAGE_FINISH
!define MUI_PAGE_HEADER_TEXT "Uninstall ${APPNAMEANDVERSION}"
!define MUI_PAGE_HEADER_TEXT "$(lsUninstall)"
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
; Set languages (first is default language)
; Set languages (first is default language). Other languages are sorted by ISO code.
!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "Arabic"
!insertmacro MUI_LANGUAGE "Catalan"
!insertmacro MUI_LANGUAGE "Czech"
!insertmacro MUI_LANGUAGE "Danish"
!insertmacro MUI_LANGUAGE "German"
!insertmacro MUI_LANGUAGE "Esperanto"
!insertmacro MUI_LANGUAGE "Spanish"
!insertmacro MUI_LANGUAGE "Finnish"
!insertmacro MUI_LANGUAGE "French"
!insertmacro MUI_LANGUAGE "Galician"
!insertmacro MUI_LANGUAGE "Hungarian"
!insertmacro MUI_LANGUAGE "Italian"
!insertmacro MUI_LANGUAGE "Japanese"
!insertmacro MUI_LANGUAGE "Korean"
!insertmacro MUI_LANGUAGE "Norwegian"
!insertmacro MUI_LANGUAGE "Dutch"
!insertmacro MUI_LANGUAGE "Polish"
!insertmacro MUI_LANGUAGE "PortugueseBR"
!insertmacro MUI_LANGUAGE "Russian"
!insertmacro MUI_LANGUAGE "Swedish"
!insertmacro MUI_LANGUAGE "Turkish"
!insertmacro MUI_LANGUAGE "Ukrainian"
!insertmacro MUI_LANGUAGE "Vietnamese"
!insertmacro MUI_LANGUAGE "SimpChinese"
!insertmacro MUI_LANGUAGE "TradChinese"
!insertmacro MUI_RESERVEFILE_LANGDLL
!include "language\install_en.nsi"
!include "language\install_nl.nsi"
!macro Init thing
uac_tryagain:
!insertmacro UAC_RunElevated
@@ -118,17 +142,17 @@ ${Case} 0
${IfThen} $1 = 1 ${|} Quit ${|} ;we are the outer process, the inner process has done its work, we are done
${IfThen} $3 <> 0 ${|} ${Break} ${|} ;we are admin, let the show go on
${If} $1 = 3 ;RunAs completed successfully, but with a non-admin user
MessageBox mb_YesNo|mb_IconExclamation|mb_TopMost|mb_SetForeground "This ${thing} requires admin privileges, try again" /SD IDNO IDYES uac_tryagain IDNO 0
MessageBox mb_YesNo|mb_IconExclamation|mb_TopMost|mb_SetForeground "$(lsUACRequiresElevation)" /SD IDNO IDYES uac_tryagain IDNO 0
${EndIf}
;fall-through and die
${Case} 1223
MessageBox mb_IconStop|mb_TopMost|mb_SetForeground "This ${thing} requires admin privileges, aborting!"
MessageBox mb_IconStop|mb_TopMost|mb_SetForeground "$(lsUACError1223)"
Quit
${Case} 1062
MessageBox mb_IconStop|mb_TopMost|mb_SetForeground "Logon service not running, aborting!"
MessageBox mb_IconStop|mb_TopMost|mb_SetForeground "$(lsUACError1062)"
Quit
${Default}
MessageBox mb_IconStop|mb_TopMost|mb_SetForeground "Unable to elevate, error $0"
MessageBox mb_IconStop|mb_TopMost|mb_SetForeground "$(lsUACErrorDefault)"
Quit
${EndSwitch}
@@ -150,7 +174,8 @@ Section "!OpenRCT2" Section1
SetShellVarContext all
; Copy data files
; Copy data files. Clear out the old dir first, to ensure upgrades do not result in old objects sticking around.
RMDir /r "$INSTDIR\data"
SetOutPath "$INSTDIR\data\"
File /r ${PATH_ROOT}bin\data\*
@@ -219,7 +244,7 @@ SectionEnd
; Modern install component descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${Section1} "Minimal OpenRCT2 installation in English. You must have RollerCoaster Tycoon 2 installed."
!insertmacro MUI_DESCRIPTION_TEXT ${Section1} "$(lsComponentDescription)"
!insertmacro MUI_FUNCTION_DESCRIPTION_END
;-----------------------------------------------
@@ -297,10 +322,10 @@ Function CheckProcessorArchitecture
ClearErrors
${If} ${RunningX64}
IntCmp ${APPBITS} 64 Done 0
MessageBox MB_YESNO|MB_ICONINFORMATION "You are trying to install the 32-bit OpenRCT2 on a 64-bit operating system. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
MessageBox MB_YESNO|MB_ICONINFORMATION "$(ls32bitVersionOn64bitOS)" IDYES Done IDNO Abort
${Else}
IntCmp ${APPBITS} 64 0 Done
MessageBox MB_YESNO|MB_ICONSTOP "You are trying to install the 64-bit OpenRCT2 on a 32-bit operating system. This is not going to work. Please download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
MessageBox MB_YESNO|MB_ICONSTOP "$(ls64bitVersionOn32bitOS)" IDYES Done IDNO Abort
${EndIf}
GoTo Done
Abort:
@@ -316,12 +341,12 @@ Function CheckWindowsVersion
StrCmp $R0 "win9x" 0 WinNT
ClearErrors
StrCmp ${APPARCH} "win9x" Done 0
MessageBox MB_YESNO|MB_ICONSTOP "You are trying to install the Windows XP SP3, Vista, 7 and 8.1 version on Windows 95, 98, ME, 2000 and XP without SP3. This is will not work. Please download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
MessageBox MB_YESNO|MB_ICONSTOP "$(lsNewWindowsVersionOnOldWindows)" IDYES Done IDNO Abort
GoTo Done
WinNT:
ClearErrors
StrCmp ${APPARCH} "win9x" 0 Done
MessageBox MB_YESNO|MB_ICONEXCLAMATION "You are trying to install the Windows 95, 98, 2000 and XP without SP3 version on Windows XP SP3, Vista, 7 and 8.1. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?" IDYES Done IDNO Abort
MessageBox MB_YESNO|MB_ICONEXCLAMATION "$(lsOldWindowsVersionOnNewWindows)" IDYES Done IDNO Abort
Abort:
Quit
Done:
@@ -339,7 +364,7 @@ Retry:
Delete "$INSTDIR\${OPENRCT2_EXE}"
IfErrors 0 Done
ClearErrors
MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "OpenRCT2 is running. Please close it and retry." IDRETRY Retry
MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "$(lsOpenRCT2IsRunning)" IDRETRY Retry
Abort
Done:
FunctionEnd
@@ -513,8 +538,7 @@ WelcomeToSetup:
; An older version was found. Let's let the user know there's an upgrade that will take place.
ReadRegStr $OLDVERSION HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OpenRCT2" "DisplayVersion"
; Gets the older version then displays it in a message box
MessageBox MB_OK|MB_ICONINFORMATION \
"Welcome to ${APPNAMEANDVERSION} Setup.$\nThis will allow you to upgrade from version $OLDVERSION."
MessageBox MB_OK|MB_ICONINFORMATION "$(lsUpgradeNotice)"
Goto FinishCallback
FinishCallback:
@@ -526,4 +550,17 @@ FunctionEnd
Function un.onInit
!insertmacro Init "uninstaller"
FunctionEnd
Function DoNotInstallInRCT2Folder
IfFileExists "$INSTDIR\Data\g1.dat" datag1exists datag1notexists
datag1exists:
MessageBox MB_OK|MB_ICONSTOP "$(lsCannotInstallToRCT2Dir)"
Abort
datag1notexists:
IfFileExists "$INSTDIR\Assets\g1.dat" assetsg1exists assetsg1notexists
assetsg1exists:
MessageBox MB_OK|MB_ICONSTOP "$(lsCannotInstallToRCTClassicDir)"
Abort
assetsg1notexists:
FunctionEnd
; eof

View File

@@ -0,0 +1,23 @@
LangString ls32bitVersionOn64bitOS ${LANG_ENGLISH} "You are trying to install the 32-bit OpenRCT2 on a 64-bit operating system. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?"
LangString ls64bitVersionOn32bitOS ${LANG_ENGLISH} "You are trying to install the 64-bit OpenRCT2 on a 32-bit operating system. This is not going to work. Please download the correct version. Do you really want to continue?"
LangString lsBrandingText ${LANG_ENGLISH} "OpenRCT2 Installer"
LangString lsCannotInstallToRCT2Dir ${LANG_ENGLISH} "You cannot install OpenRCT2 to the same directory as RollerCoaster Tycoon 2."
LangString lsCannotInstallToRCTClassicDir ${LANG_ENGLISH} "You cannot install OpenRCT2 to the same directory as RollerCoaster Tycoon Classic."
LangString lsComponentDescription ${LANG_ENGLISH} "Minimal OpenRCT2 installation. You must have RollerCoaster Tycoon 2 or Classic installed."
LangString lsFinishPageLink ${LANG_ENGLISH} "Visit the OpenRCT2 site for more information"
LangString lsInstallerName ${LANG_ENGLISH} "${APPNAMEANDVERSION} ${PLATFORM} for $(lsSupportedOS)"
LangString lsNewWindowsVersionOnOldWindows ${LANG_ENGLISH} "You are trying to install the Windows XP SP3, Vista and newer version on Windows 95, 98, ME, 2000 or XP without SP3. This is will not work. Please download the correct version. Do you really want to continue?"
LangString lsOldWindowsVersionOnNewWindows ${LANG_ENGLISH} "You are trying to install the Windows 95, 98, 2000 and XP without SP3 version on Windows XP SP3, Vista or newer. This is not advised, but will work with reduced capabilities. We suggest that you download the correct version. Do you really want to continue?"
LangString lsOpenRCT2IsRunning ${LANG_ENGLISH} "OpenRCT2 is running. Please close it and retry."
LangString lsRunNow ${LANG_ENGLISH} "Run ${APPNAMEANDVERSION} now!"
LangString lsSupportedOS ${LANG_ENGLISH} "Windows 7 and later"
LangString lsUACErrorDefault ${LANG_ENGLISH} "Unable to elevate, error $0"
LangString lsUACError1062 ${LANG_ENGLISH} "Logon service not running, aborting!"
LangString lsUACError1223 ${LANG_ENGLISH} "This ${thing} requires admin privileges, aborting!"
LangString lsUACRequiresElevation ${LANG_ENGLISH} "This ${thing} requires admin privileges, try again"
LangString lsUninstall ${LANG_ENGLISH} "Uninstall ${APPNAMEANDVERSION}"
LangString lsUpgradeNotice ${LANG_ENGLISH} "Welcome to ${APPNAMEANDVERSION} Setup.$\nThis will allow you to upgrade from version $OLDVERSION."
VIAddVersionKey /LANG=${LANG_ENGLISH} "Comments" "Installs ${APPNAMEANDVERSION}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "OpenRCT2 Developers"
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "Installs ${APPNAMEANDVERSION}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "OpenRCT2 ${PLATFORM} Installer for Windows 7 and later"

Binary file not shown.

View File

@@ -8,7 +8,7 @@
<!-- CLI Configuration -->
<CLIProjectName Condition="'$(CLIProjectName)' == ''">openrct2-cli</CLIProjectName>
<CLIProjectPath Condition="'$(CLIProjectPath)' == ''">$(SolutionDir)src\$(CLIProjectName)\$(CLIProjectName).vcxproj</CLIProjectPath>
<G2CLIPath Condition="'$(G2CLIPath)' == ''">$(OutDir)$(CLIProjectName).exe</G2CLIPath>
<GraphicsCLIPath Condition="'$(GraphicsCLIPath)' == ''">$(OutDir)$(CLIProjectName).exe</GraphicsCLIPath>
<!-- Data Configuration -->
<DataOutputPath Condition="'$(DataOutputPath)' == ''">$(OutDir)data\</DataOutputPath>
@@ -16,14 +16,18 @@
<DataLanguagePath Condition="'$(DataLanguagePath)' == ''">$(SolutionDir)data\language\</DataLanguagePath>
<DataShadersPath Condition="'$(DataShadersPath)' == ''">$(SolutionDir)data\shaders\</DataShadersPath>
<DataScenarioPath Condition="'$(DataScenarioPath)' == ''">$(SolutionDir)data\scenario_patches\</DataScenarioPath>
<ResourcesG2Path Condition="'$(ResourcesG2Path)' == ''">$(SolutionDir)resources\g2\</ResourcesG2Path>
<G2InputFile Condition="'$(G2InputFile)' == ''">$(ResourcesG2Path)sprites.json</G2InputFile>
<ResourcesPath Condition="'$(ResourcesPath)' == ''">$(SolutionDir)resources\</ResourcesPath>
<G2InputFile Condition="'$(G2InputFile)' == ''">$(ResourcesPath)g2\sprites.json</G2InputFile>
<FontsInputFile Condition="'$(FontsInputFile)' == ''">$(ResourcesPath)fonts\sprites.json</FontsInputFile>
<TracksInputFile Condition="'$(TracksInputFile)' == ''">$(ResourcesPath)tracks\sprites.json</TracksInputFile>
<DataOutputPath Condition="'$(DataOutputPath)' == ''">$(OutDir)data\</DataOutputPath>
</PropertyGroup>
<!-- File Group Definitions -->
<ItemGroup>
<G2Input Include="$(G2InputFile)" />
<FontsInput Include="$(FontsInputFile)" />
<TracksInput Include="$(TracksInputFile)" />
<LanguageFiles Include="$(DataLanguagePath)**\*"
Exclude="$(DataLanguagePath)*.bak;
@@ -107,7 +111,7 @@
<MakeDir Directories="$(DataOutputPath)" />
<Exec Command="&quot;$(G2CLIPath)&quot; sprite build &quot;$(DataOutputPath)g2.dat&quot; &quot;%(G2Input.FullPath)&quot;"
<Exec Command="&quot;$(GraphicsCLIPath)&quot; sprite build &quot;$(DataOutputPath)g2.dat&quot; &quot;%(G2Input.FullPath)&quot;"
ConsoleToMSBuild="true"
IgnoreExitCode="false">
<Output TaskParameter="ConsoleOutput" PropertyName="G2BuildOutput" />
@@ -117,6 +121,45 @@
ForceTouch="true"
AlwaysCreate="true" />
</Target>
<Target Name="g2" DependsOnTargets="BuildG2" />
<Target Name="BuildFonts"
AfterTargets="Build"
Inputs="@(FontsInput)"
Outputs="$(DataOutputPath)fonts.dat"
Condition="'$(TestConfig)' != 'true' and ('$(Platform)' != 'ARM64' or '$(PROCESSOR_ARCHITECTURE)' == 'ARM64')">
<MakeDir Directories="$(DataOutputPath)" />
<Exec Command="&quot;$(GraphicsCLIPath)&quot; sprite build &quot;$(DataOutputPath)fonts.dat&quot; &quot;%(FontsInput.FullPath)&quot;"
ConsoleToMSBuild="true"
IgnoreExitCode="false">
<Output TaskParameter="ConsoleOutput" PropertyName="FontsBuildOutput" />
</Exec>
<Touch Files="$(DataOutputPath)fonts.dat"
ForceTouch="true"
AlwaysCreate="true" />
</Target>
<Target Name="fonts" DependsOnTargets="BuildFonts" />
<Target Name="BuildTracks"
AfterTargets="Build"
Inputs="@(TracksInput)"
Outputs="$(DataOutputPath)tracks.dat"
Condition="'$(TestConfig)' != 'true' and ('$(Platform)' != 'ARM64' or '$(PROCESSOR_ARCHITECTURE)' == 'ARM64')">
<MakeDir Directories="$(DataOutputPath)" />
<Exec Command="&quot;$(GraphicsCLIPath)&quot; sprite build &quot;$(DataOutputPath)tracks.dat&quot; &quot;%(TracksInput.FullPath)&quot;"
ConsoleToMSBuild="true"
IgnoreExitCode="false">
<Output TaskParameter="ConsoleOutput" PropertyName="TracksBuildOutput" />
</Exec>
<Touch Files="$(DataOutputPath)tracks.dat"
ForceTouch="true"
AlwaysCreate="true" />
</Target>
<Target Name="tracks" DependsOnTargets="BuildTracks" />
</Project>

View File

Before

Width:  |  Height:  |  Size: 148 B

After

Width:  |  Height:  |  Size: 148 B

View File

Before

Width:  |  Height:  |  Size: 141 B

After

Width:  |  Height:  |  Size: 141 B

View File

Before

Width:  |  Height:  |  Size: 128 B

After

Width:  |  Height:  |  Size: 128 B

View File

Before

Width:  |  Height:  |  Size: 891 B

After

Width:  |  Height:  |  Size: 891 B

View File

Before

Width:  |  Height:  |  Size: 891 B

After

Width:  |  Height:  |  Size: 891 B

View File

Before

Width:  |  Height:  |  Size: 174 B

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 883 B

After

Width:  |  Height:  |  Size: 883 B

View File

Before

Width:  |  Height:  |  Size: 881 B

After

Width:  |  Height:  |  Size: 881 B

View File

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 173 B

View File

Before

Width:  |  Height:  |  Size: 892 B

After

Width:  |  Height:  |  Size: 892 B

View File

Before

Width:  |  Height:  |  Size: 894 B

After

Width:  |  Height:  |  Size: 894 B

View File

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 173 B

View File

Before

Width:  |  Height:  |  Size: 889 B

After

Width:  |  Height:  |  Size: 889 B

View File

Before

Width:  |  Height:  |  Size: 897 B

After

Width:  |  Height:  |  Size: 897 B

View File

Before

Width:  |  Height:  |  Size: 182 B

After

Width:  |  Height:  |  Size: 182 B

View File

Before

Width:  |  Height:  |  Size: 901 B

After

Width:  |  Height:  |  Size: 901 B

View File

Before

Width:  |  Height:  |  Size: 895 B

After

Width:  |  Height:  |  Size: 895 B

View File

Before

Width:  |  Height:  |  Size: 171 B

After

Width:  |  Height:  |  Size: 171 B

View File

Before

Width:  |  Height:  |  Size: 891 B

After

Width:  |  Height:  |  Size: 891 B

View File

Before

Width:  |  Height:  |  Size: 887 B

After

Width:  |  Height:  |  Size: 887 B

View File

Before

Width:  |  Height:  |  Size: 176 B

After

Width:  |  Height:  |  Size: 176 B

View File

Before

Width:  |  Height:  |  Size: 897 B

After

Width:  |  Height:  |  Size: 897 B

View File

Before

Width:  |  Height:  |  Size: 893 B

After

Width:  |  Height:  |  Size: 893 B

View File

Before

Width:  |  Height:  |  Size: 179 B

After

Width:  |  Height:  |  Size: 179 B

View File

Before

Width:  |  Height:  |  Size: 891 B

After

Width:  |  Height:  |  Size: 891 B

View File

Before

Width:  |  Height:  |  Size: 880 B

After

Width:  |  Height:  |  Size: 880 B

View File

Before

Width:  |  Height:  |  Size: 167 B

After

Width:  |  Height:  |  Size: 167 B

View File

Before

Width:  |  Height:  |  Size: 882 B

After

Width:  |  Height:  |  Size: 882 B

View File

Before

Width:  |  Height:  |  Size: 881 B

After

Width:  |  Height:  |  Size: 881 B

View File

Before

Width:  |  Height:  |  Size: 167 B

After

Width:  |  Height:  |  Size: 167 B

View File

Before

Width:  |  Height:  |  Size: 891 B

After

Width:  |  Height:  |  Size: 891 B

View File

Before

Width:  |  Height:  |  Size: 894 B

After

Width:  |  Height:  |  Size: 894 B

View File

Before

Width:  |  Height:  |  Size: 170 B

After

Width:  |  Height:  |  Size: 170 B

View File

Before

Width:  |  Height:  |  Size: 902 B

After

Width:  |  Height:  |  Size: 902 B

View File

Before

Width:  |  Height:  |  Size: 895 B

After

Width:  |  Height:  |  Size: 895 B

View File

Before

Width:  |  Height:  |  Size: 170 B

After

Width:  |  Height:  |  Size: 170 B

View File

Before

Width:  |  Height:  |  Size: 886 B

After

Width:  |  Height:  |  Size: 886 B

View File

Before

Width:  |  Height:  |  Size: 878 B

After

Width:  |  Height:  |  Size: 878 B

View File

Before

Width:  |  Height:  |  Size: 171 B

After

Width:  |  Height:  |  Size: 171 B

View File

Before

Width:  |  Height:  |  Size: 890 B

After

Width:  |  Height:  |  Size: 890 B

View File

Before

Width:  |  Height:  |  Size: 887 B

After

Width:  |  Height:  |  Size: 887 B

View File

Before

Width:  |  Height:  |  Size: 174 B

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 888 B

After

Width:  |  Height:  |  Size: 888 B

View File

Before

Width:  |  Height:  |  Size: 877 B

After

Width:  |  Height:  |  Size: 877 B

View File

Before

Width:  |  Height:  |  Size: 168 B

After

Width:  |  Height:  |  Size: 168 B

View File

Before

Width:  |  Height:  |  Size: 887 B

After

Width:  |  Height:  |  Size: 887 B

View File

Before

Width:  |  Height:  |  Size: 878 B

After

Width:  |  Height:  |  Size: 878 B

View File

Before

Width:  |  Height:  |  Size: 171 B

After

Width:  |  Height:  |  Size: 171 B

View File

Before

Width:  |  Height:  |  Size: 895 B

After

Width:  |  Height:  |  Size: 895 B

View File

Before

Width:  |  Height:  |  Size: 890 B

After

Width:  |  Height:  |  Size: 890 B

View File

Before

Width:  |  Height:  |  Size: 176 B

After

Width:  |  Height:  |  Size: 176 B

View File

Before

Width:  |  Height:  |  Size: 899 B

After

Width:  |  Height:  |  Size: 899 B

View File

Before

Width:  |  Height:  |  Size: 895 B

After

Width:  |  Height:  |  Size: 895 B

View File

Before

Width:  |  Height:  |  Size: 174 B

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 895 B

After

Width:  |  Height:  |  Size: 895 B

View File

Before

Width:  |  Height:  |  Size: 888 B

After

Width:  |  Height:  |  Size: 888 B

View File

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 173 B

View File

Before

Width:  |  Height:  |  Size: 902 B

After

Width:  |  Height:  |  Size: 902 B

View File

Before

Width:  |  Height:  |  Size: 897 B

After

Width:  |  Height:  |  Size: 897 B

View File

Before

Width:  |  Height:  |  Size: 174 B

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 908 B

After

Width:  |  Height:  |  Size: 908 B

View File

Before

Width:  |  Height:  |  Size: 902 B

After

Width:  |  Height:  |  Size: 902 B

View File

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 173 B

View File

Before

Width:  |  Height:  |  Size: 889 B

After

Width:  |  Height:  |  Size: 889 B

View File

Before

Width:  |  Height:  |  Size: 888 B

After

Width:  |  Height:  |  Size: 888 B

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