Improve behavior of Total Termination, fixes #3335

This commit is contained in:
SpectralFlame 2023-03-06 07:33:23 -06:00 committed by cyip92
parent 313cff23a1
commit 19f696067c
3 changed files with 6 additions and 3 deletions

View File

@ -60,7 +60,9 @@ class ImaginaryUpgradeState extends BitPurchasableMechanicState {
Laitela.quotes.finalRowIM.show();
}
if (this.id === 22) {
BASIC_GLYPH_TYPES.forEach(x => player.reality.glyphs.sac[x] = ImaginaryUpgrade(22).effectValue);
for (const key of Object.keys(player.reality.glyphs.sac)) {
player.reality.glyphs.sac[key] = ImaginaryUpgrade(22).effectValue;
}
}
if (this.id === 25) {
TabNotification.pelleUnlock.tryTrigger();

View File

@ -91,7 +91,8 @@ GameDatabase.reality.glyphSacrifice = {
effect: added => {
if (Pelle.isDisabled("glyphsac")) return 0;
const sac = player.reality.glyphs.sac.reality + (added ?? 0);
return 1 + Math.sqrt(sac) / 15;
// This cap is only feasibly reached with the imaginary upgrade, but we still want to cap it at a nice number
return Math.clampMax(1 + Math.sqrt(sac) / 15, 100);
},
description: amount => `Multiply Memory Chunk gain by ${formatX(amount, 2, 3)}`,
cap: () => GlyphSacrificeHandler.maxSacrificeForEffects

View File

@ -256,7 +256,7 @@ GameDatabase.reality.imaginaryUpgrades = [
checkRequirement: () => Effarig.isRunning && player.requirementChecks.reality.maxGlyphs < -10 &&
Currency.antimatter.value.exponent >= 1.5e11,
checkEvent: GAME_EVENT.GAME_TICK_AFTER,
description: () => `Glyph Sacrifice totals for basic Glyphs are increased to ${format(1e100)}`,
description: () => `All Glyph Sacrifice totals are increased to ${format(1e100)}`,
effect: 1e100,
isDisabledInDoomed: true
},