Javascript 公式不适用于点击游戏
上面的代码来自我正在尝试制作的一个点击游戏。有两个按钮,要么买一辆丹麦车,要么买五辆。我试图做的是每次购买一辆丹麦车时都增加它的成本,因此公式首先将它提高到1.05的幂,然后将它除以1.18。当我买一辆dankMiner时,它是有效的,但是当我选择买五辆时,它的成本与我五次点击Buy1时的成本不同Javascript 公式不适用于点击游戏,javascript,html,Javascript,Html,上面的代码来自我正在尝试制作的一个点击游戏。有两个按钮,要么买一辆丹麦车,要么买五辆。我试图做的是每次购买一辆丹麦车时都增加它的成本,因此公式首先将它提高到1.05的幂,然后将它除以1.18。当我买一辆dankMiner时,它是有效的,但是当我选择买五辆时,它的成本与我五次点击Buy1时的成本不同 例如,点击“购买1”选项15次,下一个选项的价格为77美元。但是,三次单击“购买5”选项后,下一个选项的成本将超过11000英镑。这两个选项是不同的 const buydankMiner1 = ()
例如,点击“购买1”选项15次,下一个选项的价格为77美元。但是,三次单击“购买5”选项后,下一个选项的成本将超过11000英镑。这两个选项是不同的
const buydankMiner1 = () => {
if (borkCoins >= dankMiner.cost) {
dankMiner.qt += 1;
borkCoins -= dankMiner.cost;
dankMiner.cost = Math.floor(Math.pow(dankMiner.cost, 1.05) / 1.18);
displayScreen()
} else {
alert("Insufficient funds!");
}
};
const buydankMiner5 = () => {
if (borkCoins >= dankMiner.cost * 5) {
dankMiner.qt += 5;
borkCoins -= dankMiner.cost * 5;
dankMiner.cost = Math.floor(Math.pow(dankMiner.cost * 5, 1.05) / 1.18);
displayScreen();
} else {
alert("Insufficient funds!");
}
};
同时做五次数学,每次1.05/1,18次,根据前一次的结果。我认为后者是您需要实现的目标。因为您的公式是错误的,它不是成本的5倍。…在“购买5”中,您在计算前将成本乘以5,您可能希望在计算后再执行。不过,这仍然会有一个问题,因为当购买单打时,每支单打的成本n是基于之前的n-1,但当购买5支单打时,n的成本仅基于n-5计算5次。您需要某种循环或递归来计算每个n-1n-2n-3n-4&n-5的n的购买价格。
Math.pow(something * 5, 1.05) / 1.18
Math.pow(something, 1.05) * 5 / 1.18