From 057a7ce9b537219b63f11b3a40bea4c56fc34f92 Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Sun, 3 Sep 2023 09:42:57 +0300 Subject: [PATCH] Version rollout (#10029) * Bump version and create initial changelog entry * Update Dutch.properties (#10023) * Update Simplified_Chinese.properties (#10020) * Update Italian.properties (#10019) * Update Russian.properties (#10017) * Update Russian.properties Defensive pacts * Update Russian.properties Some lines * Update Spanish.properties (#10016) * Update Spanish.properties * Correct Kongo name * Update French.properties (#10013) * Update German translation (#10008) * Update German translation * Update German translation --------- Co-authored-by: yairm210 Co-authored-by: Lena Bullens <95299589+LenaBullens@users.noreply.github.com> Co-authored-by: qw142536 <123065131+qw142536@users.noreply.github.com> Co-authored-by: TommasoPetrolito Co-authored-by: Anoant <143289571+Anoant@users.noreply.github.com> Co-authored-by: Caballero Arepa <78449553+Caballero-Arepa@users.noreply.github.com> Co-authored-by: Ouaz Co-authored-by: mape6 --- .../jsons/translations/Dutch.properties | 24 +++++++------------ .../jsons/translations/French.properties | 6 ++--- .../jsons/translations/German.properties | 9 +++---- .../jsons/translations/Italian.properties | 6 ++--- .../jsons/translations/Russian.properties | 24 +++++++++---------- .../Simplified_Chinese.properties | 4 ++-- .../jsons/translations/Spanish.properties | 20 ++++++++-------- buildSrc/src/main/kotlin/BuildConfig.kt | 4 ++-- changelog.md | 20 ++++++++++++++++ core/src/com/unciv/UncivGame.kt | 2 +- .../metadata/android/en-US/changelogs/908.txt | 19 +++++++++++++++ 11 files changed, 83 insertions(+), 55 deletions(-) create mode 100644 fastlane/metadata/android/en-US/changelogs/908.txt diff --git a/android/assets/jsons/translations/Dutch.properties b/android/assets/jsons/translations/Dutch.properties index 6ebb523085..ce9cc1afea 100644 --- a/android/assets/jsons/translations/Dutch.properties +++ b/android/assets/jsons/translations/Dutch.properties @@ -265,8 +265,7 @@ Sum: = Som: Trade = Handel Offer trade = Aanbod aanbieden - # Requires translation! -They'll decide on their turn = +They'll decide on their turn = Ze zullen beslissen tijdens hun beurt Retract offer = Aanbod intrekken What do you have in mind? = Wat heb je in gedachten? Our items = Onze goederen @@ -772,8 +771,7 @@ Auto-build roads = Bouw wegen automatisch Automated workers replace improvements = Laat werkers automatisch verbeteringen vervangen Automated units move on turn start = Eenheden bewegen automatisch bij het begin van een beurt Automated units can upgrade = Geautomatiseerde eenheden kunnen zich opwaarderen - # Requires translation! -Automated units choose promotions = +Automated units choose promotions = Geautomatiseerde eenheden kiezen promoties Order trade offers by amount = Sorteer handelsaanbiedingen naar hoeveelheid Ask for confirmation when pressing next turn = Vraag voor bevestiging bij de knop "Volgende beurt" Notifications log max turns = Aantal beurten op meldingenlijst @@ -1069,8 +1067,7 @@ Range = Bereik XP = Ervaring Move unit = Eenheid verplaatsen Stop movement = Verplaatsen stoppen - # Requires translation! -Show unit destination = +Show unit destination = Toon bestemming van eenheid Swap units = Verwissel eenheden Construct improvement = Verbetering bouwen Automate = Automatiseren @@ -2286,14 +2283,10 @@ upon being promoted = na gepromoveerd te worden upon losing at least [amount] HP in a single attack = na minstens [amount] HP te verliezen in een enkele aanval upon ending a turn in a [tileFilter] tile = na het beindigen van een beurt in een [tileFilter] tegel Hidden after generating a Great Prophet = Verborgen na het genereren van een Grote Profeet - # Requires translation! -Mod is incompatible with [modFilter] = - # Requires translation! -Should only be used as permanent audiovisual mod = - # Requires translation! -Can be used as permanent audiovisual mod = - # Requires translation! -Cannot be used as permanent audiovisual mod = +Mod is incompatible with [modFilter] = Mod is niet compatibel met [modFilter] +Should only be used as permanent audiovisual mod = Wordt best enkel gebruikt als een permanente audiovisuele mod +Can be used as permanent audiovisual mod = Kan gebruikt worden als een permanente audiovisuele mod +Cannot be used as permanent audiovisual mod = Kan niet gebruikt worden als een permanente audiovisuele mod ######### Map Unit Filters ########### @@ -6378,8 +6371,7 @@ The amount of ⍾Science you receive at the end is dependent on the ⍾Science g Defensive Pacts = Defensieve Verbonden Defensive pacts allow you and another civ to protect one another from aggressors.\nOnce the defensive pact is signed, you will be drawn into their future defensive wars, just as they will be drawn into your future defensive wars. Declaring war on any Civ will remove all of your defensive pacts. You will have to re-sign them to use their effect. = Met defensieve verbonden kunnen jij en een andere beschaving elkaar tegen agressors beschermen.\nZodra het defensieve verbond is ondertekend, word jij betrokken bij hun toekomstige defensieve oorlogen, net zoals zij bij jouw toekomstige defensieve oorlogen betrokken zullen worden. Als je de oorlog verklaart aan een beschaving, worden al je defensieve verbonden verwijderd. Je moet ze opnieuw ondertekenen om hun effect te kunnen gebruiken. Be cautious when signing defensive pacts because they can bring you into wars that you might not want to be in. = Wees voorzichtig bij het ondertekenen van defensieve verbonden, omdat ze je bij oorlogen kunnen betrekken waar je misschien niet aan deel wilt nemen. - # Requires translation! -The AI is very careful and will not accept defensive pacts with less than 80 influence. = +The AI is very careful and will not accept defensive pacts with less than 80 influence. = De AI is heel voorzichtig en zal geen defensief verbond aanvaarden bij minder dan 80 invloed. Not all nations are contending with you for victory.\nCity-States are nations that can't win, can't be traded with, and instead confer certain bonuses to friendly civilizations. = Niet alle naties wedijveren met je voor de overwinning.\nStadstaten zijn naties die niet kunnen winnen en niet mee gehandeld kan worden. In plaats daarvan geven ze bepaalde bonussen aan vriendelijke beschavingen. Instead, diplomatic relations with City-States are determined by Influence - a meter of 'how much the City-State likes you'.\nInfluence can be increased by attacking their enemies, liberating their city, and giving them sums of gold. = Diplomatieke relaties met Stadstaten zijn bepaald door Invloed - een maat van 'hoe graag de Stadstaat je ziet'.\nInvloed kan verbeterd worden door hun vijanden aan te vallen, hun stad te bevrijden, en hun goud te geven. diff --git a/android/assets/jsons/translations/French.properties b/android/assets/jsons/translations/French.properties index 0192b52413..7089321117 100644 --- a/android/assets/jsons/translations/French.properties +++ b/android/assets/jsons/translations/French.properties @@ -266,7 +266,7 @@ Sum: = Somme : Trade = Échanges Offer trade = Proposer un échange # Requires translation! -They'll decide on their turn = +They'll decide on their turn = Réponse au tour suivant Retract offer = Retirer l'offre What do you have in mind? = À quoi pensez-vous ? Our items = Nos biens @@ -773,7 +773,7 @@ Automated workers replace improvements = Les ouvriers automatisés remplacent le Automated units move on turn start = Les unités automatisées se déplacent au début du tour Automated units can upgrade = Les unités automatisées peuvent s'améliorer elles-mêmes # Requires translation! -Automated units choose promotions = +Automated units choose promotions = Les unités automatisées choisissent leurs promotions Order trade offers by amount = Classer les offres d'échange par valeur Ask for confirmation when pressing next turn = Demander confirmation pour passer au tour suivant Notifications log max turns = Tours max. dans le journal de notifications @@ -1070,7 +1070,7 @@ XP = XP Move unit = Déplacer l'unité Stop movement = Stopper le déplacement # Requires translation! -Show unit destination = +Show unit destination = Montrer la destination Swap units = Permuter les unités Construct improvement = Bâtir un aménagement Automate = Automatiser diff --git a/android/assets/jsons/translations/German.properties b/android/assets/jsons/translations/German.properties index 69e902d682..3bd9782141 100644 --- a/android/assets/jsons/translations/German.properties +++ b/android/assets/jsons/translations/German.properties @@ -265,8 +265,7 @@ Sum: = Summe: Trade = Handel Offer trade = Handel anbieten - # Requires translation! -They'll decide on their turn = +They'll decide on their turn = Sie werden entscheiden, wenn sie an der Reihe sind Retract offer = Angebot zurückziehen What do you have in mind? = Was schwebt Euch vor? Our items = Unsere Gegenstände @@ -772,8 +771,7 @@ Auto-build roads = Automatischer Straßenbau Automated workers replace improvements = Automatisierte Arbeiter ersetzen Verbesserungen Automated units move on turn start = Automatisierte Einheiten bewegen sich bei Rundenstart Automated units can upgrade = Automatisierte Einheiten können aufgerüstet werden - # Requires translation! -Automated units choose promotions = +Automated units choose promotions = Automatisierte Einheiten wählen Beförderungen selbstständig Order trade offers by amount = Handelsangebote nach Menge sortieren Ask for confirmation when pressing next turn = Bitte um Bestätigung für 'Nächste Runde' Notifications log max turns = Maximale Rundenanzahl des Benachrichtigungsverlaufs @@ -1069,8 +1067,7 @@ Range = Reichweite XP = EP Move unit = Einheit bewegen Stop movement = Bewegung stoppen - # Requires translation! -Show unit destination = +Show unit destination = Zeige Reiseziel Swap units = Einheiten tauschen Construct improvement = Verbesserung bauen Automate = Automatisieren diff --git a/android/assets/jsons/translations/Italian.properties b/android/assets/jsons/translations/Italian.properties index c6aab4740b..dadb4304ff 100644 --- a/android/assets/jsons/translations/Italian.properties +++ b/android/assets/jsons/translations/Italian.properties @@ -266,7 +266,7 @@ Sum: = Somma: Trade = Commercio Offer trade = Offri scambio # Requires translation! -They'll decide on their turn = +They'll decide on their turn = Risponderanno durante il loro turno Retract offer = Ritira offerta What do you have in mind? = Cos'hai in mente? Our items = I nostri articoli @@ -773,7 +773,7 @@ Automated workers replace improvements = I lavoratori automatizzati rimpiazzano Automated units move on turn start = Le unità automatizzate si muovono a inizio turno Automated units can upgrade = Aggiornamento unità automatizzate # Requires translation! -Automated units choose promotions = +Automated units choose promotions = Le unità automatizzate scelgono le promozioni Order trade offers by amount = Ordina offerte per quantità Ask for confirmation when pressing next turn = Chiedi conferma per fine turno Notifications log max turns = Notifiche limite massimo turni @@ -1070,7 +1070,7 @@ XP = XP Move unit = Sposta unità Stop movement = Ferma movimento # Requires translation! -Show unit destination = +Show unit destination = Mostra destinazione dell'unità Swap units = Scambia unità Construct improvement = Costruisci miglioramento Automate = Automatizza diff --git a/android/assets/jsons/translations/Russian.properties b/android/assets/jsons/translations/Russian.properties index dba8e88c82..e47df708a5 100644 --- a/android/assets/jsons/translations/Russian.properties +++ b/android/assets/jsons/translations/Russian.properties @@ -266,7 +266,7 @@ Sum: = Итог: Trade = Торговля Offer trade = Предложить обмен # Requires translation! -They'll decide on their turn = +They'll decide on their turn = Они примут решение во время своего хода Retract offer = Отозвать предложение What do you have in mind? = Что вы об этом думаете? Our items = Наши товары @@ -775,9 +775,9 @@ Auto-build roads = Автоматическое строительство до Automated workers replace improvements = Автоматизированные рабочие заменяют улучшения Automated units move on turn start = Автоматизированные юниты двигаются в начале хода # Requires translation! -Automated units can upgrade = +Automated units can upgrade = Автоматизированные юниты могут улучшаться # Requires translation! -Automated units choose promotions = +Automated units choose promotions = Автоматизированные юниты выбирают повышение Order trade offers by amount = Сортировать торговые предложения по количеству Ask for confirmation when pressing next turn = Спрашивать подтверждение при нажатии следующего хода Notifications log max turns = Макс. ходов в журнале оповещений @@ -1074,7 +1074,7 @@ XP = ОО Move unit = Переместить юнит Stop movement = Отменить действие # Requires translation! -Show unit destination = +Show unit destination = Показать место назначения юнита Swap units = Поменять местами Construct improvement = Построить улучшение Automate = Автоматизировать @@ -2298,13 +2298,13 @@ upon losing at least [amount] HP in a single attack = при потере как upon ending a turn in a [tileFilter] tile = при окончании хода на [tileFilter] Hidden after generating a Great Prophet = Скрыто после появления Великого пророка # Requires translation! -Mod is incompatible with [modFilter] = +Mod is incompatible with [modFilter] = Мод несовместим с [modFilter] # Requires translation! -Should only be used as permanent audiovisual mod = +Should only be used as permanent audiovisual mod = Следует использовать только в качестве постоянного аудиовизуального мода # Requires translation! -Can be used as permanent audiovisual mod = +Can be used as permanent audiovisual mod = Может быть использован как постоянный аудиовизуальный мод # Requires translation! -Cannot be used as permanent audiovisual mod = +Cannot be used as permanent audiovisual mod = Не может быть использован как постоянный аудиовизуальный мод ######### Map Unit Filters ########### @@ -6391,13 +6391,13 @@ In research agreements, you and another civilization decide to jointly research The amount of ⍾Science you receive at the end is dependent on the ⍾Science generated by your cities and the other civilization's cities during the agreement - the more, the better! = Количество ⍾Науки, которое вы получите, зависит от общего научного вклада городов обеих сторон во время действия договора - чем больше, тем лучше! # Requires translation! -Defensive Pacts = +Defensive Pacts = Оборонительные союзы # Requires translation! -Defensive pacts allow you and another civ to protect one another from aggressors.\nOnce the defensive pact is signed, you will be drawn into their future defensive wars, just as they will be drawn into your future defensive wars. Declaring war on any Civ will remove all of your defensive pacts. You will have to re-sign them to use their effect. = +Defensive pacts allow you and another civ to protect one another from aggressors.\nOnce the defensive pact is signed, you will be drawn into their future defensive wars, just as they will be drawn into your future defensive wars. Declaring war on any Civ will remove all of your defensive pacts. You will have to re-sign them to use their effect. = Оборонительные союзы позволяют вашей и другой цивилизации совместно защищать друг друга от агрессоров. \nПосле того, как оборонительный союз будет подписан, то если на эту цивилизацию нападут, вы автоматически примите участие в войне на ее стороне, равно как и если подвергнетесь агрессии вы. При объявлении войны любой цивилизации, все заключенные оборонительные союзы обнуляются, и их придется заключать снова. # Requires translation! -Be cautious when signing defensive pacts because they can bring you into wars that you might not want to be in. = +Be cautious when signing defensive pacts because they can bring you into wars that you might not want to be in. = Будьте осторожны, заключая оборонительные союзы, ведь они могут втянуть вас в войну, в которой вам не хотелось бы участвовать. # Requires translation! -The AI is very careful and will not accept defensive pacts with less than 80 influence. = +The AI is very careful and will not accept defensive pacts with less than 80 influence. = ИИ очень осторожен и не будет вступать в оборонительный союз при отношениях меньше +80. Not all nations are contending with you for victory.\nCity-States are nations that can't win, can't be traded with, and instead confer certain bonuses to friendly civilizations. = Не все государства сражаются с вами за победу.\nГорода-государства - государства, не способные выиграть, с которыми нельзя обмениваться, и вместо этого дают определённые бонусы союзным цивилизациям. Instead, diplomatic relations with City-States are determined by Influence - a meter of 'how much the City-State likes you'.\nInfluence can be increased by attacking their enemies, liberating their city, and giving them sums of gold. = Дипломатические отношения с городами-государствами меняются за счет Влияния - показателя того, насколько игрок им нравится.\nВлияние можно увеличить, атакуя их врагов, освобождая их города и предоставляя им золото. diff --git a/android/assets/jsons/translations/Simplified_Chinese.properties b/android/assets/jsons/translations/Simplified_Chinese.properties index 19052fdeaf..4eb3315ea1 100644 --- a/android/assets/jsons/translations/Simplified_Chinese.properties +++ b/android/assets/jsons/translations/Simplified_Chinese.properties @@ -771,9 +771,9 @@ Auto-assign city production = 自动分配城市产能 Auto-build roads = 自动建造道(铁)路 Automated workers replace improvements = 工人自动更换设施 Automated units move on turn start = 每回合开始时自动移动单位 -Automated units can upgrade = 自动单位可以升级 +Automated units can upgrade = 单位自动可以升级 # Requires translation! -Automated units choose promotions = +Automated units choose promotions = 单位自动选择升级 Order trade offers by amount = 交易方贸易项目按数量排序 Ask for confirmation when pressing next turn = 手动确认下一回合 Notifications log max turns = 最长通知记录回合数 diff --git a/android/assets/jsons/translations/Spanish.properties b/android/assets/jsons/translations/Spanish.properties index 85dc9ff0c7..530b6ddcee 100644 --- a/android/assets/jsons/translations/Spanish.properties +++ b/android/assets/jsons/translations/Spanish.properties @@ -266,7 +266,7 @@ Sum: = Suma: Trade = Comercio Offer trade = Proponer oferta # Requires translation! -They'll decide on their turn = +They'll decide on their turn = Decidirán en su turno Retract offer = Retirar oferta What do you have in mind? = ¿Qué tienes en mente? Our items = Nuestros elementos @@ -773,7 +773,7 @@ Automated workers replace improvements = Los Trabajadores aut. Reemplazan Mejora Automated units move on turn start = Unidades Automatizadas se mueven al pricipio del Turno Automated units can upgrade = Unidades automatizadas se mejoran solas # Requires translation! -Automated units choose promotions = +Automated units choose promotions = Unidades automatizadas escogen sus promociones Order trade offers by amount = Ordenar ofertas comerciales por cantidad Ask for confirmation when pressing next turn = Confirmación al presionar "⏳Siguiente Turno" Notifications log max turns = Máximo de guardados de notificaciones por ⏳turno @@ -1070,7 +1070,7 @@ XP = EXP Move unit = Mover unidad Stop movement = Parar movimiento # Requires translation! -Show unit destination = +Show unit destination = Ir al destino Swap units = Enrocar unidades Construct improvement = Construir mejora Automate = Automatizar @@ -2287,13 +2287,13 @@ upon losing at least [amount] HP in a single attack = al perder por lo menos [am upon ending a turn in a [tileFilter] tile = al terminar turno en una casilla [tileFilter] Hidden after generating a Great Prophet = Oculto después de generar un gran profeta # Requires translation! -Mod is incompatible with [modFilter] = +Mod is incompatible with [modFilter] = Este mod es incompatible con [modFilter] # Requires translation! -Should only be used as permanent audiovisual mod = +Should only be used as permanent audiovisual mod = Sólo debería ser usado con mod audiovisual # Requires translation! -Can be used as permanent audiovisual mod = +Can be used as permanent audiovisual mod = Puede usarse como mod audiovisual # Requires translation! -Cannot be used as permanent audiovisual mod = +Cannot be used as permanent audiovisual mod = No puede usarse como mod audiovisual ######### Map Unit Filters ########### @@ -2305,7 +2305,7 @@ Non-City = que no sean ciudad ######### Unit Type Filters ########### -All = cualquiera +All = cualquier tipo Melee = cuerpo a cuerpo Ranged = a distancia Civilian = Civiles @@ -4163,7 +4163,7 @@ Edinburgh = Edimburgo Do you really think you can walk over us so easily? I will not let it happen. Not to Kongo - not to my people! = ¿De verdad piensas que puedes pasarnos por encima con tanta facilidad? No dejaré que eso pase. !No a mi gente¡ ¡No al Congo! We are no strangers to war. You have strayed from the right path, and now we will correct it. = La guerra no nos es extraña. Te has desviado del camino y nosotros te corregiremos. You are nothing but a glorified barbarian. Cruel, and ruthless. = No eres más que un bárbaro glorificado. Cruel y despiadado. -M'Banza-Kongo = San Salvador del Congo +M'Banza-Kongo = Mbanza Kongo What a fine battle! Sidon is willing to serve you! = ¡Qué buena batalla! ¡Sidón está dispuesta a servirte! Sidon = Sidón @@ -6379,7 +6379,7 @@ Defensive Pacts = Pactos Defensivos Defensive pacts allow you and another civ to protect one another from aggressors.\nOnce the defensive pact is signed, you will be drawn into their future defensive wars, just as they will be drawn into your future defensive wars. Declaring war on any Civ will remove all of your defensive pacts. You will have to re-sign them to use their effect. = Los pactos defensivos permiten que dos civilizaciones se protejan de un agresor.\nUna vez que se haya firmado el pacto defensivo, serás incluido en las futuras guerras defensivas del aliado, al igual que el aliado se unirá en tus futuras guerras defensivas.\nAl declarar la guerra contra otra Civ (guerra ofensiva) se anularán todos tus pactos defensivos. Por lo que tendrás que volver a firmarlos para usar su efecto. Be cautious when signing defensive pacts because they can bring you into wars that you might not want to be in. = Tenga cuidado al firmar pactos defensivos porque te pueden arrastrar a guerras que no te convengan. # Requires translation! -The AI is very careful and will not accept defensive pacts with less than 80 influence. = +The AI is very careful and will not accept defensive pacts with less than 80 influence. = La IA es muy cauteloza y no aceptará pactos defensivos si tienes menos de 80 de Influencia con ella. Not all nations are contending with you for victory.\nCity-States are nations that can't win, can't be traded with, and instead confer certain bonuses to friendly civilizations. = No todas las naciones pueden alcanzar una victoria.\nLas Ciudades-Estado (CE) son naciones con las cuales no se puede comerciar y que tampoco pueden ganar. En cambio, las CEs confieren ciertos atributos a las Civilizaciones amigas. Instead, diplomatic relations with City-States are determined by Influence - a meter of 'how much the City-State likes you'.\nInfluence can be increased by attacking their enemies, liberating their city, and giving them sums of gold. = En vez de eso las relaciones diplomáticas con las ciudades estado se ven determinadas por la Influencia (un medidor de cuando le "gustas" a la ciudad-estado).\nLa influencia puede aumentarse atacando a sus enemigos, liberando su ciudad y dándoles oro. diff --git a/buildSrc/src/main/kotlin/BuildConfig.kt b/buildSrc/src/main/kotlin/BuildConfig.kt index 457d926045..290621a7c7 100644 --- a/buildSrc/src/main/kotlin/BuildConfig.kt +++ b/buildSrc/src/main/kotlin/BuildConfig.kt @@ -4,8 +4,8 @@ package com.unciv.build object BuildConfig { const val kotlinVersion = "1.8.21" const val appName = "Unciv" - const val appCodeNumber = 907 - const val appVersion = "4.7.19" + const val appCodeNumber = 908 + const val appVersion = "4.7.20" const val gdxVersion = "1.11.0" const val ktorVersion = "2.2.3" diff --git a/changelog.md b/changelog.md index f86071bee4..e32eb0a499 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,23 @@ +## 4.7.20 + +There's no need to save the civ uniques in *every* city unique usage differently, waste of RAM and CPU + +Performance: Cache uniques when choosing best tiles to settle/create improvements on + +performance: Use the same trick of 'save unfiltered, return filtered' for cached city uniques, so devs don't need to worry about cache state when improving performance! + +performance: Unique caching revamp! + +By SomeTroglodyte: +- City construct menu +- Pedia Search + +Fix: "Only available" not working properly for religions or transforming/upgrading units - By SeventhM + +Pillaged tile improvements - By GeneralWadaling + +Make "Defensive Pact" button translatable - By Ouaz + ## 4.7.19 "Jump To Destination" Unit Action Button for units that are moving - By huckdogg diff --git a/core/src/com/unciv/UncivGame.kt b/core/src/com/unciv/UncivGame.kt index b24b0c9a45..d0195c0d38 100644 --- a/core/src/com/unciv/UncivGame.kt +++ b/core/src/com/unciv/UncivGame.kt @@ -536,7 +536,7 @@ open class UncivGame(val isConsoleMode: Boolean = false) : Game(), PlatformSpeci companion object { //region AUTOMATICALLY GENERATED VERSION DATA - DO NOT CHANGE THIS REGION, INCLUDING THIS COMMENT - val VERSION = Version("4.7.19", 907) + val VERSION = Version("4.7.20", 908) //endregion lateinit var Current: UncivGame diff --git a/fastlane/metadata/android/en-US/changelogs/908.txt b/fastlane/metadata/android/en-US/changelogs/908.txt new file mode 100644 index 0000000000..23afc8a0f4 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/908.txt @@ -0,0 +1,19 @@ + + +There's no need to save the civ uniques in *every* city unique usage differently, waste of RAM and CPU + +Performance: Cache uniques when choosing best tiles to settle/create improvements on + +performance: Use the same trick of 'save unfiltered, return filtered' for cached city uniques, so devs don't need to worry about cache state when improving performance! + +performance: Unique caching revamp! + +By SomeTroglodyte: +- City construct menu +- Pedia Search + +Fix: "Only available" not working properly for religions or transforming/upgrading units - By SeventhM + +Pillaged tile improvements - By GeneralWadaling + +Make "Defensive Pact" button translatable - By Ouaz \ No newline at end of file