0
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!");
}
};
上記のコードは、私が作ろうとしているクリッカーゲームからのものです。 2つのボタンがあり、1つの「dankMiner」またはその5つを購入します。私がしようとしたのは、 "ダンクマイナー"を購入するたびにそのコストを増やすことでした。そのため、最初に1.05の累乗に上げて1.18に分割する式がありました。それは私が "dankMiner"を買うときに動作しますが、5つ購入するオプションは購入1オプションを5回クリックしたときと同じではありません。クリッカーゲームで式が機能しない
たとえば、購入1オプションを15回クリックすると、次の購入コストが77になります。ただし、購入5オプションを3回クリックすると、次の購入オプションが11,000を超えます。
あなたの数式が間違っているので、それはコストの5倍ではありません..... – epascarello
購入5では、計算の前にコストを5倍に増やしています。これはまだ問題がありますが、それぞれのコストnは前のn-1に基づいていますが、5を購入するとn-5のコストは5倍に基づいて計算されます。各(n-1 n-2 n-3 n-4&n-5)のnのbuy 5価格を計算するには、ある種のループまたは再帰が必要です。 – Confuzing