51 lines
1.8 KiB
JavaScript
51 lines
1.8 KiB
JavaScript
import CalculateGains from '../Calculations/CalculateGains';
|
|
import CheckOtherAchiev from '../Calculations/CheckOtherAchiev';
|
|
import CopyData from '../SimulationData/CopyData';
|
|
import SimWin from '../SimulationData/SimWin';
|
|
import { SimAchievementsOwned, SimCookiesPs, SimObjects } from '../VariablesAndData';
|
|
|
|
/**
|
|
* This function calculates the bonus income of buying a building
|
|
* It is called by CM.Cache.CacheBuildingIncome()
|
|
* @param {string} building The name of the building to be bought
|
|
* @param {number} amount The amount to be bought
|
|
* @returns {number} The bonus income of the building
|
|
*/
|
|
export default function BuyBuildingsBonusIncome(building, amount) {
|
|
CopyData();
|
|
SimObjects[building].amount += amount;
|
|
const me = SimObjects[building];
|
|
|
|
if (building === 'Cursor') {
|
|
if (me.amount >= 1) SimWin('Click');
|
|
if (me.amount >= 2) SimWin('Double-click');
|
|
if (me.amount >= 50) SimWin('Mouse wheel');
|
|
if (me.amount >= 100) SimWin('Of Mice and Men');
|
|
if (me.amount >= 200) SimWin('The Digital');
|
|
if (me.amount >= 300) SimWin('Extreme polydactyly');
|
|
if (me.amount >= 400) SimWin('Dr. T');
|
|
if (me.amount >= 500) SimWin('Thumbs, phalanges, metacarpals');
|
|
if (me.amount >= 600) SimWin('With her finger and her thumb');
|
|
if (me.amount >= 700) SimWin('Gotta hand it to you');
|
|
if (me.amount >= 800) SimWin("The devil's workshop");
|
|
} else {
|
|
Object.keys(Game.Objects[me.name].tieredAchievs).forEach((j) => {
|
|
if (me.amount >= Game.Tiers[Game.Objects[me.name].tieredAchievs[j].tier].achievUnlock) {
|
|
SimWin(Game.Objects[me.name].tieredAchievs[j].name);
|
|
}
|
|
});
|
|
}
|
|
|
|
const lastAchievementsOwned = SimAchievementsOwned;
|
|
|
|
CalculateGains();
|
|
|
|
CheckOtherAchiev();
|
|
|
|
if (lastAchievementsOwned !== SimAchievementsOwned) {
|
|
CalculateGains();
|
|
}
|
|
|
|
return SimCookiesPs - Game.cookiesPs;
|
|
}
|