Fix BuildingGetPrice() and remove getSumPrice()

This commit is contained in:
Daniël van Noord
2021-07-19 21:42:04 +02:00
parent 43a651ea4a
commit 075bd89669
6 changed files with 14055 additions and 22 deletions

View File

@@ -1,7 +1,5 @@
/**
* This function calculates the total price for buying "increase" of a building
* Base Game does not currently allow this
* It is called by CM.Cache.CacheBuildingsPrices() and CM.Disp.Tooltip()
* @param {string} build Name of the building
* @param {number} basePrice Base Price of building
* @param {number} start Starting amount of building
@@ -10,14 +8,11 @@
* @returns {number} moni Total price
*/
export default function BuildingGetPrice(build, basePrice, start, free, increase) {
let startingAmount = start;
let moni = 0;
for (let i = 0; i < increase; i += 1) {
let price = basePrice * Game.priceIncrease ** Math.max(0, startingAmount - free);
price = Game.modifyBuildingPrice(build, price);
price = Math.ceil(price);
moni += price;
startingAmount += 1;
let partialPrice = 0;
for (let i = Math.max(0, start); i < Math.max(0, start + increase); i++) {
partialPrice += Game.priceIncrease ** Math.max(0, i - free);
}
return moni;
let price = basePrice * partialPrice;
price = Game.modifyBuildingPrice(Game.Objects[build], price);
return Math.ceil(price);
}