/
@@ -2611,6 +2617,7 @@
+
/
@@ -2622,6 +2629,7 @@
+
/
@@ -2656,24 +2664,8 @@
1
-
Auto Setting --- Ratios:
-
Ratio: 1.00
-
-
Ratio: 1.00
-
-
Ratio: 1.00
-
-
Ratio: 1.00
-
-
Ratio: 1.00
-
-
Ratio: 1.00
-
-
Ratio: 1.00
-
-
Ratio: 1.00
-
-
+
Auto Setting ----- Ratio:
+
diff --git a/src/EventListeners.ts b/src/EventListeners.ts
index 2a0ae94ce..a8b1357d1 100644
--- a/src/EventListeners.ts
+++ b/src/EventListeners.ts
@@ -1,4 +1,4 @@
-import { toggleAscStatPerSecond, toggleTabs, toggleSubTab, toggleBuyAmount, toggleAutoTesseracts, toggleSettings, toggleautoreset, toggleautobuytesseract, toggleShops, toggleAutoSacrifice, toggleautoenhance, toggleautofortify, updateRuneBlessingBuyAmount, toggleChallenges, toggleAutoChallengesIgnore, toggleAutoChallengeRun, updateAutoChallenge, toggleResearchBuy, toggleAutoResearch, toggleAntMaxBuy, toggleAntAutoSacrifice, toggleMaxBuyCube, toggleCorruptionLevel, toggleAutoAscend, toggleShopConfirmation, toggleAutoResearchMode, toggleBuyMaxShop, toggleHepteractAutoPercentage, updateAutoHeptRatios } from './Toggles'
+import { toggleAscStatPerSecond, toggleTabs, toggleSubTab, toggleBuyAmount, toggleAutoTesseracts, toggleSettings, toggleautoreset, toggleautobuytesseract, toggleShops, toggleAutoSacrifice, toggleautoenhance, toggleautofortify, updateRuneBlessingBuyAmount, toggleChallenges, toggleAutoChallengesIgnore, toggleAutoChallengeRun, updateAutoChallenge, toggleResearchBuy, toggleAutoResearch, toggleAntMaxBuy, toggleAntAutoSacrifice, toggleMaxBuyCube, toggleCorruptionLevel, toggleAutoAscend, toggleShopConfirmation, toggleAutoResearchMode, toggleBuyMaxShop, toggleHepteractAutoPercentage, updateAutoChronosRatio, updateAutoHyperrealismRatio, updateAutoQuarkRatio, updateAutoChallengeRatio, updateAutoAbyssRatio, updateAutoAcceleratorRatio, updateAutoAcceleratorBoostRatio, updateAutoMultiplierRatio, } from './Toggles'
import { resetrepeat, updateAutoReset, updateTesseractAutoBuyAmount } from './Reset'
import { player, resetCheck, saveSynergy } from './Synergism'
import { boostAccelerator, buyAccelerator, buyMultiplier, buyProducer, buyCrystalUpgrades, buyParticleBuilding, buyTesseractBuilding, buyUpgrades, buyRuneBonusLevels, buyAllBlessings } from './Buy'
@@ -543,14 +543,14 @@ export const generateEventHandlers = () => {
DOMCacheGetOrSet('hepteractAutoPercentageButton').addEventListener('click', () => toggleHepteractAutoPercentage())
// Auto hept Ratios inputs
- DOMCacheGetOrSet('hepteractAutoRatiosInputChronos').addEventListener('input', () => updateAutoHeptRatios(1))
- DOMCacheGetOrSet('hepteractAutoRatiosInputHyper').addEventListener('input', () => updateAutoHeptRatios(2))
- DOMCacheGetOrSet('hepteractAutoRatiosInputQuark').addEventListener('input', () => updateAutoHeptRatios(3))
- DOMCacheGetOrSet('hepteractAutoRatiosInputChallenge').addEventListener('input', () => updateAutoHeptRatios(4))
- DOMCacheGetOrSet('hepteractAutoRatiosInputAbyss').addEventListener('input', () => updateAutoHeptRatios(5))
- DOMCacheGetOrSet('hepteractAutoRatiosInputAccelerators').addEventListener('input', () => updateAutoHeptRatios(6))
- DOMCacheGetOrSet('hepteractAutoRatiosInputBoost').addEventListener('input', () => updateAutoHeptRatios(7))
- DOMCacheGetOrSet('hepteractAutoRatiosInputMultipliers').addEventListener('input', () => updateAutoHeptRatios(8))
+ DOMCacheGetOrSet('chronosHepteractAutoRatio').addEventListener('click', () => updateAutoChronosRatio())
+ DOMCacheGetOrSet('hyperrealismHepteractAutoRatio').addEventListener('click', () => updateAutoHyperrealismRatio())
+ DOMCacheGetOrSet('quarkHepteractAutoRatio').addEventListener('click', () => updateAutoQuarkRatio())
+ DOMCacheGetOrSet('challengeHepteractAutoRatio').addEventListener('click', () => updateAutoChallengeRatio())
+ DOMCacheGetOrSet('abyssHepteractAutoRatio').addEventListener('click', () => updateAutoAbyssRatio())
+ DOMCacheGetOrSet('acceleratorHepteractAutoRatio').addEventListener('click', () => updateAutoAcceleratorRatio())
+ DOMCacheGetOrSet('acceleratorBoostHepteractAutoRatio').addEventListener('click', () => updateAutoAcceleratorBoostRatio())
+ DOMCacheGetOrSet('multiplierHepteractAutoRatio').addEventListener('click', () => updateAutoMultiplierRatio())
// CORRUPTION TAB
//Part 0: Subtabs
diff --git a/src/Hepteracts.ts b/src/Hepteracts.ts
index 68b9425f0..9bbe76bb5 100644
--- a/src/Hepteracts.ts
+++ b/src/Hepteracts.ts
@@ -268,7 +268,8 @@ export class HepteractCraft {
HTML.textContent = `Auto ${this.AUTO ? 'ON' : 'OFF'}`
HTML.style.border = `2px solid ${this.AUTO ? 'green' : 'red'}`
-
+ DOMCacheGetOrSet(`${this.HTML_STRING}HepteractCraft`).style.display = this.AUTO ? 'none' : 'block'
+ DOMCacheGetOrSet(`${this.HTML_STRING}HepteractAutoRatio`).style.display = this.AUTO ? 'block' : 'none'
if (bool === undefined) {
G['autoHepteractCount'] += (this.AUTO ? 1 : -1)
}
diff --git a/src/Reset.ts b/src/Reset.ts
index 275ec9d72..8687a437f 100644
--- a/src/Reset.ts
+++ b/src/Reset.ts
@@ -891,6 +891,8 @@ export const singularity = async (): Promise => {
toggleSubTab(9, 0); // set 'corruption main'
toggleSubTab(-1, 0); // set 'statistics main'
+ hold.hepteractAutoCraftPercentage = player.hepteractAutoCraftPercentage
+ hold.hepteractAutoCraftRatios = player.hepteractAutoCraftRatios
hold.singularityCount = player.singularityCount;
hold.goldenQuarks = player.goldenQuarks;
hold.shopUpgrades = player.shopUpgrades;
diff --git a/src/Toggles.ts b/src/Toggles.ts
index 666a7558a..a40907917 100644
--- a/src/Toggles.ts
+++ b/src/Toggles.ts
@@ -965,63 +965,194 @@ export const toggleHepteractAutoPercentage = async(): Promise => {
}
}
-export const updateAutoHeptRatios = (i: number) => {
- switch (i) {
- case 1: {
- const t = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputChronos') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.chronos = Math.max(t, 0);
- DOMCacheGetOrSet('ChronosR').textContent = format(player.hepteractAutoCraftRatios.chronos, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+export const updateAutoChronosRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set chronos hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your chronos hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.chronos}.`);
+ } else {
+ return
}
- case 2: {
- const u = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputHyper') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.hyperrealism = Math.max(u, 0);
- DOMCacheGetOrSet('HyperR').textContent = format(player.hepteractAutoCraftRatios.hyperrealism, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+ }
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.chronos && player.toggles[35]) {
+ return Alert(`Your chronos hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.chronos}.`)
+ }
+ player.hepteractAutoCraftRatios.chronos = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new chronos hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.chronos}.`)
+ }
+}
+
+export const updateAutoHyperrealismRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set hyperrealism hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your hyperrealism hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.hyperrealism}.`);
+ } else {
+ return
}
- case 3: {
- const v = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputQuark') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.quark = Math.max(v, 0);
- DOMCacheGetOrSet('QuarkR').textContent = format(player.hepteractAutoCraftRatios.quark, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+ }
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.hyperrealism && player.toggles[35]) {
+ return Alert(`Your hyperrealism hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.hyperrealism}.`)
+ }
+ player.hepteractAutoCraftRatios.hyperrealism = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new hyperrealism hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.hyperrealism}.`)
+ }
+}
+
+export const updateAutoQuarkRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set quark hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your quark hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.quark}.`);
+ } else {
+ return
}
- case 4: {
- const v = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputChallenge') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.challenge = Math.max(v, 0);
- DOMCacheGetOrSet('ChallengeR').textContent = format(player.hepteractAutoCraftRatios.challenge, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+ }
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.quark && player.toggles[35]) {
+ return Alert(`Your quark hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.quark}.`)
+ }
+ player.hepteractAutoCraftRatios.quark = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new quark hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.quark}.`)
+ }
+}
+
+export const updateAutoChallengeRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set challenge hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your challenge hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.challenge}.`);
+ } else {
+ return
}
- case 5: {
- const v = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputAbyss') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.abyss = Math.max(v, 0);
- DOMCacheGetOrSet('AbyssR').textContent = format(player.hepteractAutoCraftRatios.abyss, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+ }
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.challenge && player.toggles[35]) {
+ return Alert(`Your challenge hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.challenge}.`)
+ }
+ player.hepteractAutoCraftRatios.challenge = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new challenge hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.challenge}.`)
+ }
+}
+
+export const updateAutoAbyssRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set abyss hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your abyss hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.abyss}.`);
+ } else {
+ return
}
- case 6: {
- const v = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputAccelerators') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.accelerator = Math.max(v, 0);
- DOMCacheGetOrSet('AcceleratorsR').textContent = format(player.hepteractAutoCraftRatios.accelerator, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+ }
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.abyss && player.toggles[35]) {
+ return Alert(`Your abyss hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.abyss}.`)
+ }
+ player.hepteractAutoCraftRatios.abyss = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new abyss hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.abyss}.`)
+ }
+}
+
+export const updateAutoAcceleratorRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set acceleraator hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your acceleraator hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraator}.`);
+ } else {
+ return
}
- case 7: {
- const v = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputBoost') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.acceleratorBoost = Math.max(v, 0);
- DOMCacheGetOrSet('BoostR').textContent = format(player.hepteractAutoCraftRatios.acceleratorBoost, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+ }
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.acceleraator && player.toggles[35]) {
+ return Alert(`Your acceleraator hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraator}.`)
+ }
+ player.hepteractAutoCraftRatios.acceleraator = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new acceleraator hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.acceleraator}.`)
+ }
+}
+
+export const updateAutoAcceleratorBoostRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set acceleraator boost hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your acceleraator boost hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraatorBoost}.`);
+ } else {
+ return
}
- case 8: {
- const v = parseFloat((DOMCacheGetOrSet('hepteractAutoRatiosInputMultipliers') as HTMLInputElement).value) || 1;
- player.hepteractAutoCraftRatios.multiplier = Math.max(v, 0);
- DOMCacheGetOrSet('MultipliersR').textContent = format(player.hepteractAutoCraftRatios.multiplier, 2, true);
- updateAutoHeptRatiosDisplay();
- return;
+ }
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.acceleraatorBoost && player.toggles[35]) {
+ return Alert(`Your acceleraator boost hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraatorBoost}.`)
+ }
+ player.hepteractAutoCraftRatios.acceleraatorBoost = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new acceleraator boost hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.acceleraatorBoost}.`)
+ }
+}
+
+export const updateAutoMultiplierRatio = async(): Promise => {
+ const amount = await Prompt(
+ 'Enter an integer to set multiplier hepteract autocraft ratio. '
+ );
+ if (amount === null) {
+ if (player.toggles[35]) {
+ return Alert(`Your multiplier hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.multiplier}.`);
+ } else {
+ return
}
}
+ const ratio = parseInt(amount)
+ if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
+ return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio === player.hepteractAutoCraftRatios.multiplier && player.toggles[35]) {
+ return Alert(`Your multiplier hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.multiplier}.`)
+ }
+ player.hepteractAutoCraftRatios.multiplier = ratio
+ updateAutoHeptRatiosDisplay();
+ if (player.toggles[35]) {
+ return Alert(`Okay. Your new multiplier hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.multiplier}.`)
+ }
}
\ No newline at end of file
diff --git a/src/UpdateVisuals.ts b/src/UpdateVisuals.ts
index ced9290ec..4fef18ee2 100644
--- a/src/UpdateVisuals.ts
+++ b/src/UpdateVisuals.ts
@@ -570,7 +570,7 @@ export const visualUpdateShop = () => {
}
export const updateAutoHeptRatiosDisplay = () => {
- DOMCacheGetOrSet('autoHepteractRatios').textContent = `${player.hepteractAutoCraftRatios.chronos} ` + `${player.hepteractAutoCraftRatios.hyperrealism} `
- + `${player.hepteractAutoCraftRatios.quark} ` + `${player.hepteractAutoCraftRatios.challenge} ` + `${player.hepteractAutoCraftRatios.abyss} `
- + `${player.hepteractAutoCraftRatios.accelerator} ` + `${player.hepteractAutoCraftRatios.acceleratorBoost} ` + `${player.hepteractAutoCraftRatios.multiplier}`
+ DOMCacheGetOrSet('autoHepteractRatios').textContent = `${player.hepteractAutoCraftRatios.chronos}` + `${player.hepteractAutoCraftRatios.hyperrealism}`
+ + `${player.hepteractAutoCraftRatios.quark}` + `${player.hepteractAutoCraftRatios.challenge}` + `${player.hepteractAutoCraftRatios.abyss}`
+ + `${player.hepteractAutoCraftRatios.accelerator}` + `${player.hepteractAutoCraftRatios.acceleratorBoost}` + `${player.hepteractAutoCraftRatios.multiplier}`
}
\ No newline at end of file
From 7e4327fa0d88ade2d1740f98a9ae2b94f159bc3b Mon Sep 17 00:00:00 2001
From: William Austin Byers <78285417+ab3327@users.noreply.github.com>
Date: Sat, 9 Jul 2022 21:21:12 -0400
Subject: [PATCH 4/6] lint
---
src/EventListeners.ts | 2 +-
src/Hepteracts.ts | 29 +++++++++++------------------
src/Synergism.ts | 10 +++++-----
src/UpdateVisuals.ts | 8 ++++----
4 files changed, 21 insertions(+), 28 deletions(-)
diff --git a/src/EventListeners.ts b/src/EventListeners.ts
index a8b1357d1..c77e6427b 100644
--- a/src/EventListeners.ts
+++ b/src/EventListeners.ts
@@ -1,4 +1,4 @@
-import { toggleAscStatPerSecond, toggleTabs, toggleSubTab, toggleBuyAmount, toggleAutoTesseracts, toggleSettings, toggleautoreset, toggleautobuytesseract, toggleShops, toggleAutoSacrifice, toggleautoenhance, toggleautofortify, updateRuneBlessingBuyAmount, toggleChallenges, toggleAutoChallengesIgnore, toggleAutoChallengeRun, updateAutoChallenge, toggleResearchBuy, toggleAutoResearch, toggleAntMaxBuy, toggleAntAutoSacrifice, toggleMaxBuyCube, toggleCorruptionLevel, toggleAutoAscend, toggleShopConfirmation, toggleAutoResearchMode, toggleBuyMaxShop, toggleHepteractAutoPercentage, updateAutoChronosRatio, updateAutoHyperrealismRatio, updateAutoQuarkRatio, updateAutoChallengeRatio, updateAutoAbyssRatio, updateAutoAcceleratorRatio, updateAutoAcceleratorBoostRatio, updateAutoMultiplierRatio, } from './Toggles'
+import { toggleAscStatPerSecond, toggleTabs, toggleSubTab, toggleBuyAmount, toggleAutoTesseracts, toggleSettings, toggleautoreset, toggleautobuytesseract, toggleShops, toggleAutoSacrifice, toggleautoenhance, toggleautofortify, updateRuneBlessingBuyAmount, toggleChallenges, toggleAutoChallengesIgnore, toggleAutoChallengeRun, updateAutoChallenge, toggleResearchBuy, toggleAutoResearch, toggleAntMaxBuy, toggleAntAutoSacrifice, toggleMaxBuyCube, toggleCorruptionLevel, toggleAutoAscend, toggleShopConfirmation, toggleAutoResearchMode, toggleBuyMaxShop, toggleHepteractAutoPercentage, updateAutoChronosRatio, updateAutoHyperrealismRatio, updateAutoQuarkRatio, updateAutoChallengeRatio, updateAutoAbyssRatio, updateAutoAcceleratorRatio, updateAutoAcceleratorBoostRatio, updateAutoMultiplierRatio } from './Toggles'
import { resetrepeat, updateAutoReset, updateTesseractAutoBuyAmount } from './Reset'
import { player, resetCheck, saveSynergy } from './Synergism'
import { boostAccelerator, buyAccelerator, buyMultiplier, buyProducer, buyCrystalUpgrades, buyParticleBuilding, buyTesseractBuilding, buyUpgrades, buyRuneBonusLevels, buyAllBlessings } from './Buy'
diff --git a/src/Hepteracts.ts b/src/Hepteracts.ts
index 9bbe76bb5..c681bd544 100644
--- a/src/Hepteracts.ts
+++ b/src/Hepteracts.ts
@@ -269,7 +269,7 @@ export class HepteractCraft {
HTML.textContent = `Auto ${this.AUTO ? 'ON' : 'OFF'}`
HTML.style.border = `2px solid ${this.AUTO ? 'green' : 'red'}`
DOMCacheGetOrSet(`${this.HTML_STRING}HepteractCraft`).style.display = this.AUTO ? 'none' : 'block'
- DOMCacheGetOrSet(`${this.HTML_STRING}HepteractAutoRatio`).style.display = this.AUTO ? 'block' : 'none'
+ DOMCacheGetOrSet(`${this.HTML_STRING}HepteractAutoRatio`).style.display = this.AUTO ? 'block' : 'none'
if (bool === undefined) {
G['autoHepteractCount'] += (this.AUTO ? 1 : -1)
}
@@ -291,9 +291,9 @@ export class HepteractCraft {
itemLimits.push(Math.floor((player[item as keyof Player] as number) / this.OTHER_CONVERSIONS[item as keyof Player]!) * 1 / (1 - this.DISCOUNT))
}
}
- // Create an array of hept ratios and get the largest one
+ // Get the largest ratio from hepts
let largestRatio = player.hepteractAutoCraftRatios.chronos
- for (let item of Object.entries(player.hepteractAutoCraftRatios)){
+ for (const item of Object.entries(player.hepteractAutoCraftRatios)){
if (largestRatio < item[1]){
largestRatio = item[1];
}
@@ -301,28 +301,21 @@ export class HepteractCraft {
// Get the smallest of the array we created [If Empty, this will be infinite]
const smallestItemLimit = Math.min(...itemLimits);
let amountToCraft;
- if (this.HTML_STRING == "chronos"){
+ if (this.HTML_STRING === 'chronos'){
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.chronos / largestRatio);
- }
- else if (this.HTML_STRING == "hyperreal"){
+ } else if (this.HTML_STRING === 'hyperreal'){
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.hyperreal / largestRatio);
- }
- else if (this.HTML_STRING == "quark"){
+ } else if (this.HTML_STRING === 'quark'){
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.quark / largestRatio);
- }
- else if (this.HTML_STRING == "challenge"){
+ } else if (this.HTML_STRING === 'challenge'){
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.challenge / largestRatio);
- }
- else if (this.HTML_STRING == "abyss"){
+ } else if (this.HTML_STRING === 'abyss'){
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.abyss / largestRatio);
- }
- else if (this.HTML_STRING == "accelerator"){
+ } else if (this.HTML_STRING === 'accelerator'){
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.accelerator / largestRatio);
- }
- else if (this.HTML_STRING == "acceleratorBoost"){
+ } else if (this.HTML_STRING === 'acceleratorBoost'){
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.acceleratorBoost / largestRatio);
- }
- else {
+ } else {
amountToCraft = Math.min(smallestItemLimit, hepteractLimitCraft) * (player.hepteractAutoCraftRatios.multiplier / largestRatio);
}
let amountCrafted = 0
diff --git a/src/Synergism.ts b/src/Synergism.ts
index 1b8e32348..c051adedb 100644
--- a/src/Synergism.ts
+++ b/src/Synergism.ts
@@ -1591,11 +1591,11 @@ const loadSynergy = async () => {
}
DOMCacheGetOrSet('autoHepteractPercentage').textContent = `${player.hepteractAutoCraftPercentage}`
-
- DOMCacheGetOrSet('autoHepteractRatios').textContent = `${player.hepteractAutoCraftRatios.chronos} ` + `${player.hepteractAutoCraftRatios.hyperrealism} `
- + `${player.hepteractAutoCraftRatios.quark} ` + `${player.hepteractAutoCraftRatios.challenge} ` + `${player.hepteractAutoCraftRatios.abyss} `
- + `${player.hepteractAutoCraftRatios.accelerator} ` + `${player.hepteractAutoCraftRatios.acceleratorBoost} ` + `${player.hepteractAutoCraftRatios.multiplier}`
-
+
+ DOMCacheGetOrSet('autoHepteractRatios').textContent = `${player.hepteractAutoCraftRatios.chronos}` + `${player.hepteractAutoCraftRatios.hyperrealism}`
+ + `${player.hepteractAutoCraftRatios.quark}` + `${player.hepteractAutoCraftRatios.challenge}` + `${player.hepteractAutoCraftRatios.abyss}`
+ + `${player.hepteractAutoCraftRatios.accelerator}` + `${player.hepteractAutoCraftRatios.acceleratorBoost}` + `${player.hepteractAutoCraftRatios.multiplier}`
+
toggleTalismanBuy(player.buyTalismanShardPercent);
updateTalismanInventory();
calculateObtainium();
diff --git a/src/UpdateVisuals.ts b/src/UpdateVisuals.ts
index 4fef18ee2..d21381281 100644
--- a/src/UpdateVisuals.ts
+++ b/src/UpdateVisuals.ts
@@ -570,7 +570,7 @@ export const visualUpdateShop = () => {
}
export const updateAutoHeptRatiosDisplay = () => {
- DOMCacheGetOrSet('autoHepteractRatios').textContent = `${player.hepteractAutoCraftRatios.chronos}` + `${player.hepteractAutoCraftRatios.hyperrealism}`
- + `${player.hepteractAutoCraftRatios.quark}` + `${player.hepteractAutoCraftRatios.challenge}` + `${player.hepteractAutoCraftRatios.abyss}`
- + `${player.hepteractAutoCraftRatios.accelerator}` + `${player.hepteractAutoCraftRatios.acceleratorBoost}` + `${player.hepteractAutoCraftRatios.multiplier}`
-}
\ No newline at end of file
+ DOMCacheGetOrSet('autoHepteractRatios').textContent = `${player.hepteractAutoCraftRatios.chronos} ` + `${player.hepteractAutoCraftRatios.hyperrealism} `
+ + `${player.hepteractAutoCraftRatios.quark} ` + `${player.hepteractAutoCraftRatios.challenge} ` + `${player.hepteractAutoCraftRatios.abyss} `
+ + `${player.hepteractAutoCraftRatios.accelerator} ` + `${player.hepteractAutoCraftRatios.acceleratorBoost} ` + `${player.hepteractAutoCraftRatios.multiplier} `
+}
\ No newline at end of file
From 2b5f44a76a80aa0046fa6a7b0c5b8d69cd008937 Mon Sep 17 00:00:00 2001
From: William Austin Byers <78285417+ab3327@users.noreply.github.com>
Date: Fri, 15 Jul 2022 09:42:34 -0400
Subject: [PATCH 5/6] fix merge issue
---
src/Hepteracts.ts | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/src/Hepteracts.ts b/src/Hepteracts.ts
index 8b4665b01..9ab7fe8e2 100644
--- a/src/Hepteracts.ts
+++ b/src/Hepteracts.ts
@@ -259,18 +259,6 @@ export class HepteractCraft {
toggleAutomatic(newValue?: boolean): Promise | HepteractCraft {
const HTML = DOMCacheGetOrSet(`${this.HTML_STRING}HepteractAuto`);
- if (!this.UNLOCKED && bool === undefined) {
- return Alert('You do not have this as an unlocked craft. Automation is therefore not possible.')
- }
- const HTML = DOMCacheGetOrSet(`${this.HTML_STRING}HepteractAuto`)
-
- this.AUTO = bool ?? !this.AUTO
-
- if (bool === undefined) {
- G['autoHepteractCount'] += (this.AUTO ? 1 : -1)
- }
- // Math.pow(-1, bool) also works here, but c'mon. - Platonic
- // When newValue is empty, current value is toggled
this.AUTO = newValue ?? !this.AUTO;
HTML.textContent = `Auto ${this.AUTO ? 'ON' : 'OFF'}`;
From 98fc2bb5ec832c9cd42703c639286ed42f0a4d47 Mon Sep 17 00:00:00 2001
From: William Austin Byers <78285417+ab3327@users.noreply.github.com>
Date: Fri, 15 Jul 2022 18:21:50 -0400
Subject: [PATCH 6/6] added check for ratios <= 0
---
src/Toggles.ts | 52 +++++++++++++++++++++++++++++++----------------
src/UpdateHTML.ts | 4 ++--
2 files changed, 36 insertions(+), 20 deletions(-)
diff --git a/src/Toggles.ts b/src/Toggles.ts
index 0d6fa2956..8c6ee1dca 100644
--- a/src/Toggles.ts
+++ b/src/Toggles.ts
@@ -1028,7 +1028,7 @@ export const toggleHepteractAutoPercentage = async(): Promise => {
export const updateAutoChronosRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set chronos hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set chronos hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
@@ -1040,6 +1040,8 @@ export const updateAutoChronosRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
} else if (ratio === player.hepteractAutoCraftRatios.chronos && player.toggles[35]) {
return Alert(`Your chronos hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.chronos}.`)
}
@@ -1052,7 +1054,7 @@ export const updateAutoChronosRatio = async(): Promise => {
export const updateAutoHyperrealismRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set hyperrealism hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set hyperrealism hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
@@ -1064,6 +1066,8 @@ export const updateAutoHyperrealismRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
} else if (ratio === player.hepteractAutoCraftRatios.hyperrealism && player.toggles[35]) {
return Alert(`Your hyperrealism hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.hyperrealism}.`)
}
@@ -1076,7 +1080,7 @@ export const updateAutoHyperrealismRatio = async(): Promise => {
export const updateAutoQuarkRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set quark hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set quark hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
@@ -1088,6 +1092,8 @@ export const updateAutoQuarkRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
} else if (ratio === player.hepteractAutoCraftRatios.quark && player.toggles[35]) {
return Alert(`Your quark hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.quark}.`)
}
@@ -1100,7 +1106,7 @@ export const updateAutoQuarkRatio = async(): Promise => {
export const updateAutoChallengeRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set challenge hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set challenge hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
@@ -1112,6 +1118,8 @@ export const updateAutoChallengeRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
} else if (ratio === player.hepteractAutoCraftRatios.challenge && player.toggles[35]) {
return Alert(`Your challenge hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.challenge}.`)
}
@@ -1124,7 +1132,7 @@ export const updateAutoChallengeRatio = async(): Promise => {
export const updateAutoAbyssRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set abyss hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set abyss hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
@@ -1136,6 +1144,8 @@ export const updateAutoAbyssRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
} else if (ratio === player.hepteractAutoCraftRatios.abyss && player.toggles[35]) {
return Alert(`Your abyss hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.abyss}.`)
}
@@ -1148,11 +1158,11 @@ export const updateAutoAbyssRatio = async(): Promise => {
export const updateAutoAcceleratorRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set acceleraator hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set accelerator hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
- return Alert(`Your acceleraator hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraator}.`);
+ return Alert(`Your accelerator hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.accelerator}.`);
} else {
return
}
@@ -1160,23 +1170,25 @@ export const updateAutoAcceleratorRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
- } else if (ratio === player.hepteractAutoCraftRatios.acceleraator && player.toggles[35]) {
- return Alert(`Your acceleraator hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraator}.`)
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
+ } else if (ratio === player.hepteractAutoCraftRatios.accelerator && player.toggles[35]) {
+ return Alert(`Your acceleraator hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.accelerator}.`)
}
- player.hepteractAutoCraftRatios.acceleraator = ratio
+ player.hepteractAutoCraftRatios.accelerator = ratio
updateAutoHeptRatiosDisplay();
if (player.toggles[35]) {
- return Alert(`Okay. Your new acceleraator hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.acceleraator}.`)
+ return Alert(`Okay. Your new accelerator hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.accelerator}.`)
}
}
export const updateAutoAcceleratorBoostRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set acceleraator boost hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set accelerator boost hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
- return Alert(`Your acceleraator boost hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraatorBoost}.`);
+ return Alert(`Your accelerator boost hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleratorBoost}.`);
} else {
return
}
@@ -1184,19 +1196,21 @@ export const updateAutoAcceleratorBoostRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
- } else if (ratio === player.hepteractAutoCraftRatios.acceleraatorBoost && player.toggles[35]) {
- return Alert(`Your acceleraator boost hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleraatorBoost}.`)
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
+ } else if (ratio === player.hepteractAutoCraftRatios.acceleratorBoost && player.toggles[35]) {
+ return Alert(`Your accelerator boost hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.acceleratorBoost}.`)
}
- player.hepteractAutoCraftRatios.acceleraatorBoost = ratio
+ player.hepteractAutoCraftRatios.acceleratorBoost = ratio
updateAutoHeptRatiosDisplay();
if (player.toggles[35]) {
- return Alert(`Okay. Your new acceleraator boost hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.acceleraatorBoost}.`)
+ return Alert(`Okay. Your new accelerator boost hepteract autocraft ratio will be ${player.hepteractAutoCraftRatios.acceleratorBoost}.`)
}
}
export const updateAutoMultiplierRatio = async(): Promise => {
const amount = await Prompt(
- 'Enter an integer to set multiplier hepteract autocraft ratio. '
+ 'Enter a positive non-zero integer to set multiplier hepteract autocraft ratio. '
);
if (amount === null) {
if (player.toggles[35]) {
@@ -1208,6 +1222,8 @@ export const updateAutoMultiplierRatio = async(): Promise => {
const ratio = parseInt(amount)
if (Number.isNaN(ratio) || !Number.isFinite(ratio) || !Number.isInteger(ratio)) {
return Alert('Value must be a finite, non-decimal number!');
+ } else if (ratio <= 0) {
+ return Alert('Value must be greater than 0!');
} else if (ratio === player.hepteractAutoCraftRatios.multiplier && player.toggles[35]) {
return Alert(`Your multiplier hepteract autocraft ratio is kept at ${player.hepteractAutoCraftRatios.multiplier}.`)
}
diff --git a/src/UpdateHTML.ts b/src/UpdateHTML.ts
index 9db0f295b..4229b760f 100644
--- a/src/UpdateHTML.ts
+++ b/src/UpdateHTML.ts
@@ -5,7 +5,7 @@ import { CalcCorruptionStuff, calculateAscensionAcceleration, calculateTimeAccel
import { achievementaward, totalachievementpoints } from './Achievements';
import { displayRuneInformation } from './Runes';
import { autoResearchEnabled } from './Research';
-import { visualUpdateBuildings, visualUpdateUpgrades, visualUpdateAchievements, visualUpdateRunes, visualUpdateChallenges, visualUpdateResearch, visualUpdateSettings, visualUpdateShop, visualUpdateSingularity, visualUpdateAnts, visualUpdateCubes, visualUpdateCorruptions } from './UpdateVisuals';
+import { visualUpdateBuildings, visualUpdateUpgrades, visualUpdateAchievements, visualUpdateRunes, visualUpdateChallenges, visualUpdateResearch, visualUpdateSettings, visualUpdateShop, visualUpdateSingularity, visualUpdateAnts, visualUpdateCubes, visualUpdateCorruptions, updateAutoHeptRatiosDisplay } from './UpdateVisuals';
import { getMaxChallenges } from './Challenges';
import type { OneToFive, ZeroToFour, ZeroToSeven } from './types/Synergism';
import { DOMCacheGetOrSet } from './Cache/DOM';
@@ -204,7 +204,7 @@ export const revealStuff = () => {
}
visualUpdateShop();
-
+ updateAutoHeptRatiosDisplay();
const hepts = DOMCacheGetOrSet('corruptionHepteracts');
hepts.style.display = (player.achievements[255] > 0) ? 'block' : 'none';