Skip to content

Commit 6c351fb

Browse files
committed
Resolved #13058 - Science points no longer 're-bonused' on overflow
1 parent 3ce2399 commit 6c351fb

File tree

2 files changed

+5
-8
lines changed

2 files changed

+5
-8
lines changed

core/src/com/unciv/logic/civilization/managers/TechManager.kt

+4-7
Original file line numberDiff line numberDiff line change
@@ -97,10 +97,7 @@ class TechManager : IsPartOfGameInfoSerialization {
9797

9898
fun getNumberOfTechsResearched(): Int = techsResearched.size
9999

100-
fun getOverflowScience(techName: String): Int {
101-
return if (overflowScience == 0) 0
102-
else (getScienceModifier(techName) * overflowScience).toInt()
103-
}
100+
fun getOverflowScience(): Int = overflowScience
104101

105102
private fun getScienceModifier(techName: String): Float { // https://forums.civfanatics.com/threads/the-mechanics-of-overflow-inflation.517970/
106103
val numberOfCivsResearchedThisTech = civInfo.getKnownCivs()
@@ -140,7 +137,7 @@ class TechManager : IsPartOfGameInfoSerialization {
140137
// Was once duplicated as fun scienceSpentOnTech(tech: String): Int
141138

142139
fun remainingScienceToTech(techName: String): Int {
143-
val spareScience = if (canBeResearched(techName)) getOverflowScience(techName) else 0
140+
val spareScience = if (canBeResearched(techName)) getOverflowScience() else 0
144141
return costOfTech(techName) - researchOfTech(techName) - spareScience
145142
}
146143

@@ -253,7 +250,7 @@ class TechManager : IsPartOfGameInfoSerialization {
253250
NotificationIcon.Science)
254251
}
255252
if (overflowScience != 0) {
256-
finalScienceToAdd += getOverflowScience(currentTechnologyName()!!)
253+
finalScienceToAdd += getOverflowScience()
257254
overflowScience = 0
258255
}
259256

@@ -279,7 +276,7 @@ class TechManager : IsPartOfGameInfoSerialization {
279276
*/
280277
fun updateResearchProgress() {
281278
val currentTechnology = currentTechnologyName() ?: return
282-
val realOverflow = getOverflowScience(currentTechnology)
279+
val realOverflow = getOverflowScience()
283280
val scienceSpent = researchOfTech(currentTechnology) + realOverflow
284281
if (scienceSpent >= costOfTech(currentTechnology)) {
285282
overflowScience = 0

core/src/com/unciv/ui/screens/pickerscreens/TechPickerScreen.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,7 @@ class TechPickerScreen(
442442
}
443443

444444
private fun getTechProgressLabel(techs: List<String>): String {
445-
val progress = techs.sumOf { tech -> civTech.researchOfTech(tech) } + civTech.getOverflowScience(techs.first())
445+
val progress = techs.sumOf { tech -> civTech.researchOfTech(tech) } + civTech.getOverflowScience()
446446
val techCost = techs.sumOf { tech -> civInfo.tech.costOfTech(tech) }
447447
return "(${progress}/${techCost})"
448448
}

0 commit comments

Comments
 (0)