Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 公式不适用于点击游戏_Javascript_Html - Fatal编程技术网

Javascript 公式不适用于点击游戏

Javascript 公式不适用于点击游戏,javascript,html,Javascript,Html,上面的代码来自我正在尝试制作的一个点击游戏。有两个按钮,要么买一辆丹麦车,要么买五辆。我试图做的是每次购买一辆丹麦车时都增加它的成本,因此公式首先将它提高到1.05的幂,然后将它除以1.18。当我买一辆dankMiner时,它是有效的,但是当我选择买五辆时,它的成本与我五次点击Buy1时的成本不同 例如,点击“购买1”选项15次,下一个选项的价格为77美元。但是,三次单击“购买5”选项后,下一个选项的成本将超过11000英镑。这两个选项是不同的 const buydankMiner1 = ()

上面的代码来自我正在尝试制作的一个点击游戏。有两个按钮,要么买一辆丹麦车,要么买五辆。我试图做的是每次购买一辆丹麦车时都增加它的成本,因此公式首先将它提高到1.05的幂,然后将它除以1.18。当我买一辆dankMiner时,它是有效的,但是当我选择买五辆时,它的成本与我五次点击Buy1时的成本不同


例如,点击“购买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