From 208e441086684fa9c328bdfd814e5260f60ec895 Mon Sep 17 00:00:00 2001 From: Rudis Muiznieks Date: Sun, 12 Sep 2021 22:47:06 -0500 Subject: [PATCH] broke credibility hit out into its own inc value --- src/main.ts | 4 ++-- src/model/resource/Money.ts | 7 +++++-- src/render/DebugRenderer.ts | 29 ++++++++++++++++++----------- 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/src/main.ts b/src/main.ts index 20cf03c..f8a0b86 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,8 +1,8 @@ /// /// -const versionMajor = 2; -const versionMinor = 1; +const versionMajor = 3; +const versionMinor = 0; let globalStartTime = 0; let globalTimeout: number | null = null; diff --git a/src/model/resource/Money.ts b/src/model/resource/Money.ts index eeeaa1d..1a214f5 100644 --- a/src/model/resource/Money.ts +++ b/src/model/resource/Money.ts @@ -47,16 +47,19 @@ class Money extends Resource { const tithings = ((state.resource.pastors?.value ?? 0) * (state.resource.followers?.value ?? 0) * - (state.config.cfgTitheAmount ?? 0) * - Credibility.ratio(state)) / + (state.config.cfgTitheAmount ?? 0)) / state.config.cfgTimeBetweenTithes; + // credibility hit + const credibility = tithings - tithings * Credibility.ratio(state); + // salaries const compoundManagers = (state.resource.compoundManagers?.value ?? 0) * (state.config.cfgSalary.compoundManagers ?? 0); if (tithings > 0) inc.pastors = tithings; + if (credibility > 0) inc.credibility = credibility * -1; if (compoundManagers > 0) inc.compoundManagers = compoundManagers * -1; return inc; diff --git a/src/render/DebugRenderer.ts b/src/render/DebugRenderer.ts index fec0718..b409e53 100644 --- a/src/render/DebugRenderer.ts +++ b/src/render/DebugRenderer.ts @@ -111,18 +111,21 @@ class DebugRenderer implements IRenderer { if (el.className !== 'resource') el.className = 'resource'; const elV = el.getElementsByClassName('resource-value')[0]; const elT = el.getElementsByClassName('resource-max')[0]; - const value = resource.valueInWholeNumbers - ? Math.floor(resource.value) - : resource.value; + const value = formatNumber( + resource.valueInWholeNumbers + ? Math.floor(resource.value) + : resource.value + ); const max = resource.max !== undefined ? resource.max(state) : undefined; - elV.innerHTML = formatNumber(value); - elT.innerHTML = + if (elV.innerHTML !== value) elV.innerHTML = value; + const maxStr = max !== undefined ? ` / ${formatNumber( resource.valueInWholeNumbers ? Math.floor(max) : max )}` : ''; + if (elT.innerHTML !== maxStr) elT.innerHTML = maxStr; if (resource.userActions !== undefined) { for (let i = 0; i < resource.userActions.length; i++) { const elB = document.getElementById(`resource-btn-${rkey}-${i}`); @@ -139,17 +142,21 @@ class DebugRenderer implements IRenderer { const inc = resourceNumberSum(resInc); const elI = el.getElementsByClassName('resource-inc')[0]; if (inc !== 0) { - elI.innerHTML = ` ${inc > 0 ? '+' : ''}${formatNumber(inc)}/s`; - elI.setAttribute('title', this._getIncDetails(resource, state)); + const incStr = ` ${inc > 0 ? '+' : ''}${formatNumber(inc)}/s`; + if (elI.innerHTML !== incStr) { + elI.innerHTML = incStr; + elI.setAttribute('title', this._getIncDetails(resource, state)); + } } else if (elI.innerHTML !== '') { elI.innerHTML = ''; elI.removeAttribute('title'); } } - if (this._handleClick) { - const elC = el.getElementsByClassName('resource-cost'); - if (elC.length > 0) { - elC[0].innerHTML = this._getCostStr(resource, state); + const elC = el.getElementsByClassName('resource-cost'); + if (elC.length > 0) { + const costStr = this._getCostStr(resource, state); + if (elC[0].innerHTML !== costStr) { + elC[0].innerHTML = costStr; } } } else {