diff --git a/save.txt b/save.txt new file mode 100644 index 0000000..d1b7428 --- /dev/null +++ b/save.txt @@ -0,0 +1 @@ +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 \ No newline at end of file diff --git a/theory.js b/theory.js index 9b983c3..85a3c16 100644 --- a/theory.js +++ b/theory.js @@ -2,6 +2,10 @@ import { BigNumber } from '../api/BigNumber'; import { ConstantCost, ExponentialCost, FirstFreeCost, StepwiseCost } from '../api/Costs'; import { Localization } from '../api/Localization'; import { QuaternaryEntry, theory } from '../api/Theory'; +import { LayoutOptions } from '../api/ui/properties/LayoutOptions'; +import { TextAlignment } from '../api/ui/properties/TextAlignment'; +import { Thickness } from '../api/ui/properties/Thickness'; +import { ui } from '../api/ui/UI'; import { Utils } from '../api/Utils'; import { Vector3 } from '../api/Vector3'; @@ -109,7 +113,7 @@ var authors = 'propfeds, Eylanding\n\n' + 'BotAn & hotab - Українська\n' + '66.69 - Filipino\n' + 'propfeds - Tiếng Việt'; -var version = 2; +var version = 3; var releaseOrder = '7'; let pubTime = 0; @@ -121,6 +125,7 @@ let zTerm = BigNumber.from(zResult[2]); let dTerm = BigNumber.ZERO; let lastZero = 0; +let blackhole = false; let searchingRewind = false; let foundZero = false; let bhzTerm = null; @@ -219,6 +224,7 @@ const locStrings = pubTime: '{0}', terms: '{0}', blackhole: '', + blackholeUnlock: '', blackholeInfo: 'Pulls {0} to {1}', menuBlackhole: '', blackholeThreshold: '', @@ -237,7 +243,8 @@ const locStrings = { pubTime: 'Publication time: {0}', terms: 'Riemann-Siegel terms: {0}', - blackhole: 'Unleash a black hole', + blackhole: 'Unleash the black hole: ', + blackholeUnlock: 'the black hole', blackholeInfo: 'Pulls {0} backwards to the nearest zero of {1}', menuBlackhole: 'Black Hole Settings', blackholeThreshold: 'Automatically unleash black hole at: ', @@ -256,7 +263,8 @@ const locStrings = { pubTime: '出版时间:{0}', terms: '黎曼-西格尔项:{0}', - blackhole: '释放黑洞', + blackhole: '释放黑洞:', + blackholeUnlock: '黑洞', blackholeInfo: '将 {0} 拉回至 {1} 的最近的零点', menuBlackhole: '黑洞设置', blackholeThreshold: '自动释放黑洞的条件:', @@ -275,7 +283,8 @@ const locStrings = { pubTime: '出版時間:{0}', terms: '黎曼-西格爾項:{0}', - blackhole: '釋放黑洞', + blackhole: '釋放黑洞:', + blackholeUnlock: '黑洞', blackholeInfo: '將 {0} 移到和 {1} 最接近的零點', menuBlackhole: '黑洞設定', blackholeThreshold: '自動釋放黑洞的條件:', @@ -294,10 +303,11 @@ const locStrings = { pubTime: 'Tiempo: {0}', terms: 'Términos de Riemann-Siegel: {0}', - blackhole: 'Desatar el agujero negro', + blackhole: 'Desatar el agujero negro: ', + blackholeUnlock: 'el agujero negro', blackholeInfo: 'Jala {0} hacia atrás hasta el cero más cercano de {1}', menuBlackhole: 'Configuraciones del Agujero Negro', - blackholeThreshold: 'Automaticamente desata el Agujero Negro en: ', + blackholeThreshold: 'Automaticamente desata el agujero negro en: ', blackholeCopyt: 'Usar t actual', save: 'Guardar', rotationLock: @@ -313,7 +323,8 @@ const locStrings = { pubTime: 'Temps : {0}', terms: 'Termes de Riemann-Siegel : {0}', - blackhole: 'Libérer un trou noir', + blackhole: 'Libérer le trou noir : ', + blackholeUnlock: 'le trou noir', blackholeInfo: 'Renvoie {0} au dernier zéro de {1}', menuBlackhole: 'Paramètres du trou noir', blackholeThreshold: 'Libérer automatiquement le trou noir à : ', @@ -332,7 +343,8 @@ const locStrings = { pubTime: 'Время: {0}', terms: 'Члены Римана-Зигеля: {0}', - blackhole: 'Высвободить чёрную дыру', + blackhole: 'Высвободить чёрную дыру: ', + blackholeUnlock: 'чёрную дыру', blackholeInfo: 'Оттягивает {0} назад к ближайшему нулю {1}', menuBlackhole: 'Настройки Чёрной Дыры', blackholeThreshold: 'Автоматически высвободить чёрную дыру при: ', @@ -351,7 +363,8 @@ const locStrings = { pubTime: 'Час: {0}', terms: 'Членів Рімана-Зігеля: {0}', - blackhole: 'Вивільнити чорну діру', + blackhole: 'Вивільнити чорну діру: ', + blackholeUnlock: 'чорну діру', blackholeInfo: 'Відтягує {0} назад до найближчого нуля {1}', menuBlackhole: 'Налаштування Чорної Діри', blackholeThreshold: 'Автоматично вивільнити чорну діру при: ', @@ -370,7 +383,8 @@ const locStrings = { pubTime: 'Oras: {0}', terms: 'Mga terminolohiya ng Riemann-Siegel: {0}', - blackhole: 'Pakawalan ang black hole', + blackhole: 'Pakawalan ang black hole: ', + blackholeUnlock: 'ang black hole', blackholeInfo: 'Hilain ang {0} patalikod patungo sa pinakamalapit na {1}', menuBlackhole: 'Settings ng Black Hole', blackholeThreshold: 'Awtomatikong pakawalan ang black hole: ', @@ -389,7 +403,8 @@ const locStrings = { pubTime: 'Thời gian: {0}', terms: 'Riemann-Siegel: {0} số hạng', - blackhole: 'Giải phóng hố đen', + blackhole: 'Giải phóng hố đen: ', + blackholeUnlock: 'hố đen', blackholeInfo: 'Kéo {0} ngược lại tới không điểm gần nhất của {1}', menuBlackhole: 'Cài đặt hố đen', blackholeThreshold: 'Tự động giải phóng hố đen tại: ', @@ -802,7 +817,7 @@ let zeta = (T) => let t = Math.abs(T); let z; if(t >= 1) - z = riemannSiegelZeta(t, 1); + z = riemannSiegelZeta(t, 2); else if(t < 0.1) z = zetaSmall(t); else @@ -822,6 +837,34 @@ let zeta = (T) => return z; } +let enableBlackhole = () => +{ + if(blackhole) + return; + blackhole = true; + + searchingRewind = true; + foundZero = false; + bhzTerm = null; + bhdTerm = null; + if(lastZero >= 14 && lastZero > t - 10) + t = lastZero; +} + +let disableBlackhole = () => +{ + if(!blackhole) + return; + blackhole = false; + + if(foundZero) + lastZero = t; + searchingRewind = false; + foundZero = false; + bhzTerm = null; + bhdTerm = null; +} + /** * Returns a string of a fixed decimal number, with a fairly uniform width. * @param {number} x the number. @@ -844,6 +887,18 @@ let getImageSize = (width) => return 20; } +let getSmallBtnSize = (width) => +{ + if(width >= 1080) + return 80; + if(width >= 720) + return 60; + if(width >= 360) + return 40; + + return 32; +} + let createImageBtn = (params, callback, isAvailable, image) => { let triggerable = true; @@ -852,7 +907,7 @@ let createImageBtn = (params, callback, isAvailable, image) => ({ cornerRadius: 1, margin: new Thickness(2), - padding: new Thickness(1), + padding: new Thickness(2), hasShadow: isAvailable, heightRequest: getImageSize(ui.screenWidth), widthRequest: getImageSize(ui.screenWidth), @@ -860,7 +915,7 @@ let createImageBtn = (params, callback, isAvailable, image) => ({ source: image, aspect: Aspect.ASPECT_FIT, - useTint: true + useTint: false }), borderColor, ...params @@ -903,7 +958,7 @@ let createActiveImageBtn = (params, callback, image) => ({ cornerRadius: 1, margin: new Thickness(2), - padding: new Thickness(1), + padding: new Thickness(2), hasShadow: true, heightRequest: getImageSize(ui.screenWidth), widthRequest: getImageSize(ui.screenWidth), @@ -911,7 +966,7 @@ let createActiveImageBtn = (params, callback, image) => ({ source: image, aspect: Aspect.ASPECT_FIT, - useTint: true + useTint: false }), borderColor, ...params @@ -1200,28 +1255,19 @@ var init = () => */ { blackholeMs = theory.createMilestoneUpgrade(4, 1); - blackholeMs.description = getLoc('blackhole'); + blackholeMs.description = Localization.getUpgradeUnlockDesc( + Localization.format(`\\text{${getLoc('blackholeUnlock')}}`)); blackholeMs.info = Localization.format(getLoc('blackholeInfo'), Utils.getMath('t'), Utils.getMath('\\zeta(s)')); blackholeMs.bought = (_) => { - searchingRewind = true; - foundZero = false; - bhzTerm = null; - bhdTerm = null; - if(lastZero >= 14 && lastZero > t - 10) - t = lastZero; - updateAvailability(); } blackholeMs.refunded = (_) => { - if(foundZero) - lastZero = t; - searchingRewind = false; - foundZero = false; - bhzTerm = null; - bhdTerm = null; + clipping_t = false; + disableBlackhole(); + updateAvailability(); } blackholeMs.isAvailable = false; } @@ -1239,7 +1285,7 @@ var updateAvailability = () => w2.isAvailable = w2Ms.level > 0; w3.isAvailable = w3Perma.level > 0; blackholeMs.isAvailable = c1ExpMs.level == c1ExpMaxLevel && w2Ms.level > 0; - blackholeMenuFrame.isVisible = theory.milestonesTotal > 5; + blackholeMenuFrame.isVisible = blackholeMs.level > 0; } var isCurrencyVisible = (index) => (index && derivMs.level > 0) || !index; @@ -1250,7 +1296,7 @@ var tick = (elapsedTime, multiplier) => return; pubTime += elapsedTime; - if(!blackholeMs.level || t < 14) + if(!blackhole || t < 14) { t_dot = t_resolution; t += t_dot * elapsedTime; @@ -1266,7 +1312,7 @@ var tick = (elapsedTime, multiplier) => let c2Term = getc2(c2.level); let bTerm = getb(b.level); - if(!blackholeMs.level || !foundZero) + if(!blackhole || !foundZero) { let prevZ = zResult[2]; zResult = zeta(t); @@ -1282,7 +1328,7 @@ var tick = (elapsedTime, multiplier) => derivCurrency.value += dTerm.pow(bTerm) * w1Term * w2Term * w3Term * bonus; - if(blackholeMs.level && t >= 14 && !dTerm.isZero) + if(blackhole && t >= 14 && !dTerm.isZero) { let d = (tmpZ[2] - zResult[2]) * derivRes; let bhdt = zResult[2] / d; @@ -1320,7 +1366,7 @@ var tick = (elapsedTime, multiplier) => // when offline: lastZero is small (maybe even zero), if lastZero is smaller than t but t is greater than threshold then rewind if(blackholeMs.isAvailable && clipping_t && t >= lastZero && t >= tClipThreshold) - blackholeMs.buy(1); + enableBlackhole(); } else { @@ -1360,10 +1406,30 @@ var getEquationOverlay = () => return result; } - let createBlackholeMenu = () => { let tmpThreshold = tClipThreshold; + let actuallyEditing = false; + + let getBHStr = () => `${blackhole ? '═' : '─'}${!searchingRewind ? + '═' : '─'}${foundZero ? '═' : '─'}`; + + let blackholeBtn = ui.createButton + ({ + row: 0, column: 1, + horizontalOptions: LayoutOptions.END, + heightRequest: getSmallBtnSize(ui.screenWidth), + text: () => blackhole ? getBHStr() : + Localization.get('EnumSoundOff'), + onClicked: () => + { + Sound.playClick(); + if(!blackhole) + enableBlackhole(); + else + disableBlackhole(); + } + }); let clippingSwitch = createHesitantSwitch ({ @@ -1373,12 +1439,8 @@ let createBlackholeMenu = () => { clipping_t = !clipping_t; clippingSwitch.isToggled = clipping_t; - // if(!clipping_t) - // blackholeMs.refund(1); }, clipping_t); - let actuallyEditing = false; - let thresholdEntry = ui.createEntry ({ row: 0, column: 1, @@ -1429,10 +1491,26 @@ let createBlackholeMenu = () => ({ children: [ + ui.createGrid + ({ + margin: new Thickness(0, 0, 0, 4), + columnDefinitions: ['auto', '1*'], + children: + [ + ui.createLatexLabel + ({ + row: 0, column: 0, + text: getLoc('blackhole'), + verticalTextAlignment: TextAlignment.CENTER + }), + blackholeBtn + ] + }), ui.createLatexLabel ({ margin: new Thickness(0, 0, 0, 6), text: getLoc('blackholeThreshold'), + horizontalTextAlignment: TextAlignment.CENTER, verticalTextAlignment: TextAlignment.CENTER }), ui.createGrid @@ -1541,12 +1619,12 @@ var postPublish = () => zTerm = BigNumber.from(zResult[2]); dTerm = BigNumber.ZERO; lastZero = 0; - searchingRewind = false; + // searchingRewind = false; foundZero = false; - bhzTerm = null; - bhdTerm = null; + // bhzTerm = null; + // bhdTerm = null; - blackholeMs.refund(1); + disableBlackhole(); theory.invalidatePrimaryEquation(); theory.invalidateSecondaryEquation(); @@ -1566,7 +1644,7 @@ var resetStage = () => // This points lastZero to a non-zero, necessary sacrifice. lastZero = 0; foundZero = false; - blackholeMs.refund(1); + disableBlackhole(); } var getInternalState = () => JSON.stringify @@ -1575,6 +1653,9 @@ var getInternalState = () => JSON.stringify t, pubTime, lastZero, + blackhole, + searchingRewind, + foundZero, clipping_t, tClipThreshold }) @@ -1588,9 +1669,23 @@ var setInternalState = (stateStr) => t = state.t ?? t; pubTime = state.pubTime ?? pubTime; lastZero = state.lastZero ?? lastZero; + blackhole = state.blackhole ?? blackhole; + searchingRewind = state.searchingRewind ?? searchingRewind; + foundZero = state.foundZero ?? foundZero; clipping_t = state.clipping_t ?? clipping_t; tClipThreshold = state.tClipThreshold ?? tClipThreshold; + if(foundZero) + { + let zResult = zeta(t); + let tmpZ = zeta(t + derivResInv); + let dr = tmpZ[0] - zResult[0]; + let di = tmpZ[1] - zResult[1]; + bhdTerm = BigNumber.from(Math.sqrt(dr*dr + di*di) * + derivRes); + bhzTerm = BigNumber.from(zResult[2]).abs(); + } + theory.invalidatePrimaryEquation(); theory.invalidateTertiaryEquation(); }