From ddf2c2b2ac853384e5d8692e703b4cd0586e3cfc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com>
Date: Fri, 16 Feb 2024 10:25:15 -0600
Subject: [PATCH] fix: dpm using adrelaine and tungesten
---
.../[id]/components/Characteristics/index.tsx | 9 ++++++++-
src/core/blitzkrieg/resolveDpm.ts | 14 +++++++++++---
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx b/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx
index 888238b00..5e1611491 100644
--- a/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx
+++ b/src/app/tools/tankopedia/[id]/components/Characteristics/index.tsx
@@ -112,7 +112,14 @@ export function Characteristics() {
Fire
{GUN_TYPE_NAMES[gun.type]}
- {resolveDpm(gun, shell, hasRammer, hasShellReloadBoost)}
+ {resolveDpm(
+ gun,
+ shell,
+ hasRammer,
+ hasShellReloadBoost,
+ hasAdrenaline,
+ hasTungsten,
+ )}
{gun.type === 'autoReloader' && (
<>
diff --git a/src/core/blitzkrieg/resolveDpm.ts b/src/core/blitzkrieg/resolveDpm.ts
index dba994237..e7faaf51c 100644
--- a/src/core/blitzkrieg/resolveDpm.ts
+++ b/src/core/blitzkrieg/resolveDpm.ts
@@ -5,19 +5,27 @@ export function resolveDpm(
shell: ShellDefinition,
hasRammer = false,
hasShellReloadBoost = false,
+ hasAdrenaline = false,
+ hasTungsten = false,
) {
+ const alpha = shell.damage.armor * (hasTungsten ? 1.15 : 1);
+
if (gun.type === 'regular') {
- return (shell.damage.armor / ((hasRammer ? 0.93 : 1) * gun.reload)) * 60;
+ return (
+ (alpha /
+ ((hasRammer ? 0.93 : 1) * (hasAdrenaline ? 0.8 : 1) * gun.reload)) *
+ 60
+ );
} else if (gun.type === 'autoLoader') {
return (
- ((shell.damage.armor * gun.count) /
+ ((alpha * gun.count) /
(gun.reload +
(gun.count - 1) * gun.interClip * (hasShellReloadBoost ? 0.7 : 1))) *
60
);
} else {
return (
- ((shell.damage.armor * gun.count) /
+ ((alpha * gun.count) /
(gun.reload.reduce((a, b) => a + b, 0) +
(gun.count - 1) * gun.interClip)) *
60