mirror of
https://github.com/yairm210/Unciv.git
synced 2025-02-05 16:38:24 +07:00
perf(memory): Don't create a resource counter if we know we don't need it
This commit is contained in:
parent
f62919b666
commit
b1a3a4d89d
@ -547,10 +547,13 @@ class Building : RulesetStatsObject(), INonPerpetualConstruction {
|
||||
fun isSellable() = !isAnyWonder() && !hasUnique(UniqueType.Unsellable)
|
||||
|
||||
override fun getResourceRequirementsPerTurn(state: StateForConditionals?): Counter<String> {
|
||||
val uniques = getMatchingUniques(UniqueType.ConsumesResources,
|
||||
state ?: StateForConditionals.EmptyState)
|
||||
if (uniques.none() && requiredResource == null) return Counter.ZERO
|
||||
|
||||
val resourceRequirements = Counter<String>()
|
||||
if (requiredResource != null) resourceRequirements[requiredResource!!] = 1
|
||||
for (unique in getMatchingUniques(UniqueType.ConsumesResources,
|
||||
state ?: StateForConditionals.EmptyState))
|
||||
for (unique in uniques)
|
||||
resourceRequirements[unique.params[1]] += unique.params[0].toInt()
|
||||
return resourceRequirements
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user