mirror of
https://github.com/Sendouc/sendou.ink.git
synced 2026-03-21 18:04:39 -05:00
Split ink vac sucking radius into min and max (#1839)
* split ink vac stats into two * add missing translations for analyzer:stat.special.radiusRangeMin and analyzer:stat.special.radiusRangeMin * add pt-BR translation * added roundToNDecimalPlaces to min and max radius values
This commit is contained in:
parent
7d5c2ec61f
commit
fcfc6cf7d1
|
|
@ -280,7 +280,8 @@ export interface AnalyzedBuild {
|
|||
specialMoveSpeed?: Stat;
|
||||
specialAutoChargeRate?: Stat;
|
||||
specialMaxRadius?: Stat;
|
||||
specialRadiusRange?: Stat<string>;
|
||||
specialRadiusRangeMin?: Stat;
|
||||
specialRadiusRangeMax?: Stat;
|
||||
specialPowerUpDuration?: Stat;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -173,7 +173,8 @@ export function buildStats({
|
|||
specialMoveSpeed: specialMoveSpeed(input),
|
||||
specialAutoChargeRate: specialAutoChargeRate(input),
|
||||
specialMaxRadius: specialMaxRadius(input),
|
||||
specialRadiusRange: specialRadiusRange(input),
|
||||
specialRadiusRangeMin: specialRadiusRangeMin(input),
|
||||
specialRadiusRangeMax: specialRadiusRangeMax(input),
|
||||
specialPowerUpDuration: specialPowerUpDuration(input),
|
||||
},
|
||||
};
|
||||
|
|
@ -1742,14 +1743,39 @@ function specialMaxRadius(
|
|||
};
|
||||
}
|
||||
|
||||
function specialRadiusRange(
|
||||
function specialRadiusRangeMax(
|
||||
args: StatFunctionInput,
|
||||
): AnalyzedBuild["stats"]["specialRadiusRange"] {
|
||||
): AnalyzedBuild["stats"]["specialRadiusRangeMax"] {
|
||||
if (
|
||||
!hasEffect({
|
||||
key: "RadiusMax",
|
||||
weapon: args.specialWeaponParams,
|
||||
}) ||
|
||||
})
|
||||
) {
|
||||
return;
|
||||
}
|
||||
|
||||
const SPECIAL_RADIUS_RANGE_KEY = "SPU";
|
||||
|
||||
const radiusMax = abilityPointsToEffects({
|
||||
abilityPoints: apFromMap({
|
||||
abilityPoints: args.abilityPoints,
|
||||
ability: SPECIAL_RADIUS_RANGE_KEY,
|
||||
}),
|
||||
key: "RadiusMax",
|
||||
weapon: args.specialWeaponParams,
|
||||
});
|
||||
|
||||
return {
|
||||
baseValue: roundToNDecimalPlaces(radiusMax.baseEffect),
|
||||
value: roundToNDecimalPlaces(radiusMax.effect),
|
||||
modifiedBy: SPECIAL_RADIUS_RANGE_KEY,
|
||||
};
|
||||
}
|
||||
function specialRadiusRangeMin(
|
||||
args: StatFunctionInput,
|
||||
): AnalyzedBuild["stats"]["specialRadiusRangeMin"] {
|
||||
if (
|
||||
!hasEffect({
|
||||
key: "RadiusMin",
|
||||
weapon: args.specialWeaponParams,
|
||||
|
|
@ -1768,22 +1794,10 @@ function specialRadiusRange(
|
|||
key: "RadiusMin",
|
||||
weapon: args.specialWeaponParams,
|
||||
});
|
||||
const radiusMax = abilityPointsToEffects({
|
||||
abilityPoints: apFromMap({
|
||||
abilityPoints: args.abilityPoints,
|
||||
ability: SPECIAL_RADIUS_RANGE_KEY,
|
||||
}),
|
||||
key: "RadiusMax",
|
||||
weapon: args.specialWeaponParams,
|
||||
});
|
||||
|
||||
return {
|
||||
baseValue: `${roundToNDecimalPlaces(
|
||||
radiusMin.baseEffect,
|
||||
)}-${roundToNDecimalPlaces(radiusMax.baseEffect)}`,
|
||||
value: `${roundToNDecimalPlaces(radiusMin.effect)}-${roundToNDecimalPlaces(
|
||||
radiusMax.effect,
|
||||
)}`,
|
||||
baseValue: roundToNDecimalPlaces(radiusMin.baseEffect),
|
||||
value: roundToNDecimalPlaces(radiusMin.effect),
|
||||
modifiedBy: SPECIAL_RADIUS_RANGE_KEY,
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -649,11 +649,22 @@ function BuildAnalyzerPage() {
|
|||
popoverInfo={t("analyzer:stat.special.maxRadius.explanation")}
|
||||
/>
|
||||
)}
|
||||
{analyzed.stats.specialRadiusRange && (
|
||||
{analyzed.stats.specialRadiusRangeMin && (
|
||||
<StatCard
|
||||
context={context}
|
||||
stat={statKeyToTuple("specialRadiusRange")}
|
||||
title={t("analyzer:stat.special.radiusRange", {
|
||||
stat={statKeyToTuple("specialRadiusRangeMin")}
|
||||
title={t("analyzer:stat.special.radiusRangeMin", {
|
||||
weapon: t(
|
||||
`weapons:SPECIAL_${analyzed.weapon.specialWeaponSplId}`,
|
||||
),
|
||||
})}
|
||||
/>
|
||||
)}
|
||||
{analyzed.stats.specialRadiusRangeMax && (
|
||||
<StatCard
|
||||
context={context}
|
||||
stat={statKeyToTuple("specialRadiusRangeMax")}
|
||||
title={t("analyzer:stat.special.radiusRangeMax", {
|
||||
weapon: t(
|
||||
`weapons:SPECIAL_${analyzed.weapon.specialWeaponSplId}`,
|
||||
),
|
||||
|
|
|
|||
|
|
@ -83,7 +83,8 @@
|
|||
"stat.special.autoChargeRate": "{{weapon}}'s auto-opladningshastighed",
|
||||
"stat.special.maxRadius": "{{weapon}} bølgerne tilbagelægger følgende afstand",
|
||||
"stat.special.maxRadius.explanation": "Bølgernes fart er altid den samme",
|
||||
"stat.special.radiusRange": "{{weapon}}s sugeradius",
|
||||
"stat.special.radiusRangeMin": "{{weapon}}s sugeradius (Minimum)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}}s sugeradius (Maksimum)",
|
||||
"stat.special.powerUpDuration": "varrigheden af effekterne fra {{weapon}}-drinks",
|
||||
"damage.header.type": "Type",
|
||||
"damage.header.damage": "Skade",
|
||||
|
|
|
|||
|
|
@ -72,7 +72,8 @@
|
|||
"stat.special.autoChargeRate": "{{weapon}} Auto-Aufladungsrate",
|
||||
"stat.special.maxRadius": "{{weapon}} Max. Radius Welle",
|
||||
"stat.special.maxRadius.explanation": "Die Ausbreitungsgeschwindigkeit der Welle ist immer konstant, trotz größerem Radius.",
|
||||
"stat.special.radiusRange": "{{weapon}} Saugradius",
|
||||
"stat.special.radiusRangeMin": "{{weapon}} Saugradius (Minimum)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}} Saugradius (Maximum)",
|
||||
"stat.special.powerUpDuration": "{{weapon}} Drink-Effektdauer",
|
||||
"damage.header.type": "Typ",
|
||||
"damage.header.damage": "Schaden",
|
||||
|
|
|
|||
|
|
@ -83,7 +83,8 @@
|
|||
"stat.special.autoChargeRate": "{{weapon}} auto charge rate",
|
||||
"stat.special.maxRadius": "{{weapon}} wave max radius",
|
||||
"stat.special.maxRadius.explanation": "Travel speed of the wave is always the same despite the increased radius.",
|
||||
"stat.special.radiusRange": "{{weapon}} sucking radius",
|
||||
"stat.special.radiusRangeMin": "{{weapon}} sucking radius (Minimum)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}} sucking radius (Maximum)",
|
||||
"stat.special.powerUpDuration": "{{weapon}} drink effect duration",
|
||||
"damage.header.type": "Type",
|
||||
"damage.header.damage": "Damage",
|
||||
|
|
|
|||
|
|
@ -80,7 +80,8 @@
|
|||
"stat.special.autoChargeRate": "Velocidad de carga automatica de {{weapon}}",
|
||||
"stat.special.maxRadius": "Radio máximo de ondas de {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "La velocidad de la onda es igual a pesar del aumento del radio.",
|
||||
"stat.special.radiusRange": "Radio del aspiro de {{weapon}}",
|
||||
"stat.special.radiusRangeMin": "Radio del aspiro de {{weapon}} (Mínimo)",
|
||||
"stat.special.radiusRangeMax": "Radio del aspiro de {{weapon}} (Máximo)",
|
||||
"stat.special.powerUpDuration": "Duración del effecto de {{weapon}}",
|
||||
"damage.header.type": "Tipo",
|
||||
"damage.header.damage": "Daño",
|
||||
|
|
|
|||
|
|
@ -80,7 +80,8 @@
|
|||
"stat.special.autoChargeRate": "Velocidad de carga automatica de {{weapon}}",
|
||||
"stat.special.maxRadius": "Radio máximo de ondas de {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "La velocidad de la onda es igual a pesar del aumento del radio.",
|
||||
"stat.special.radiusRange": "Radio del aspiro de {{weapon}}",
|
||||
"stat.special.radiusRangeMin": "Radio del aspiro de {{weapon}} (Mínimo)",
|
||||
"stat.special.radiusRangeMax": "Radio del aspiro de {{weapon}} (Máximo)",
|
||||
"stat.special.powerUpDuration": "Duración del effecto de {{weapon}}",
|
||||
"damage.header.type": "Tipo",
|
||||
"damage.header.damage": "Daño",
|
||||
|
|
|
|||
|
|
@ -79,7 +79,8 @@
|
|||
"stat.special.autoChargeRate": "Cadence de charge auto du {{weapon}}",
|
||||
"stat.special.maxRadius": "Rayon max de l'onde du {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "La vitesse de déplacement de l'onde est toujours la même malgré l'augmentation du rayon.",
|
||||
"stat.special.radiusRange": "Rayon d'aspiration d'{{weapon}}",
|
||||
"stat.special.radiusRangeMin": "Rayon d'aspiration d'{{weapon}} (Minimum)",
|
||||
"stat.special.radiusRangeMax": "Rayon d'aspiration d'{{weapon}} (Maximum)",
|
||||
"stat.special.powerUpDuration": "Durée de l'effet de {{weapon}}",
|
||||
"damage.header.type": "Type",
|
||||
"damage.header.damage": "Dégâts",
|
||||
|
|
|
|||
|
|
@ -79,7 +79,8 @@
|
|||
"stat.special.autoChargeRate": "Cadence de charge auto du {{weapon}}",
|
||||
"stat.special.maxRadius": "Rayon max de l'onde du {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "La vitesse de déplacement de l'onde est toujours la même malgré l'augmentation du rayon.",
|
||||
"stat.special.radiusRange": "Rayon d'aspiration d'{{weapon}}",
|
||||
"stat.special.radiusRangeMin": "Rayon d'aspiration d'{{weapon}} (Minimum)",
|
||||
"stat.special.radiusRangeMax": "Rayon d'aspiration d'{{weapon}} (Maximum)",
|
||||
"stat.special.powerUpDuration": "Durée de l'effet de {{weapon}}",
|
||||
"damage.header.type": "Type",
|
||||
"damage.header.damage": "Dégâts",
|
||||
|
|
|
|||
|
|
@ -79,7 +79,8 @@
|
|||
"stat.special.autoChargeRate": "קצב טעינה אוטומטי של {{weapon}}",
|
||||
"stat.special.maxRadius": "רדיוס מרבי לגל של {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "מהירות הגל תמיד קבועה למרות הגדלת הרדיוס.",
|
||||
"stat.special.radiusRange": "רדיוס שאיבה של {{weapon}}",
|
||||
"stat.special.radiusRangeMin": "(מינימום) רדיוס שאיבה של {{weapon}}",
|
||||
"stat.special.radiusRangeMax": "(מקסימום) רדיוס שאיבה של {{weapon}}",
|
||||
"stat.special.powerUpDuration": "משך השפעת המשקה של {{weapon}}",
|
||||
"damage.header.type": "סוג",
|
||||
"damage.header.damage": "נזק",
|
||||
|
|
|
|||
|
|
@ -69,7 +69,8 @@
|
|||
"stat.special.autoChargeRate": "Tasso di ricarica automatica {{weapon}}",
|
||||
"stat.special.maxRadius": "Raggio massimo onda {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "La velocità dell'onda è sempre la stessa nonostante l'aumento del raggio.",
|
||||
"stat.special.radiusRange": "Raggio di aspirazione {{weapon}}",
|
||||
"stat.special.radiusRangeMin": "Raggio di aspirazione {{weapon}} (Minimo)",
|
||||
"stat.special.radiusRangeMax": "Raggio di aspirazione {{weapon}} (Massimo)",
|
||||
"stat.special.powerUpDuration": "Durata effetto bibita {{weapon}}",
|
||||
"damage.header.type": "Tipo",
|
||||
"damage.header.damage": "Danno",
|
||||
|
|
|
|||
|
|
@ -83,7 +83,8 @@
|
|||
"stat.special.autoChargeRate": "{{weapon}} 自動チャージ速度",
|
||||
"stat.special.maxRadius": "{{weapon}} ウェーブ最大範囲",
|
||||
"stat.special.maxRadius.explanation": "ウェーブの移動スピードは範囲が広がっても常に同じです。",
|
||||
"stat.special.radiusRange": "{{weapon}} 吸引範囲",
|
||||
"stat.special.radiusRangeMin": "{{weapon}} 吸引範囲 (最小)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}} 吸引範囲 (最大)",
|
||||
"stat.special.powerUpDuration": "{{weapon}} ドリンクの効果時間",
|
||||
"damage.header.type": "タイプ",
|
||||
"damage.header.damage": "ダメージ",
|
||||
|
|
|
|||
|
|
@ -81,7 +81,8 @@
|
|||
"stat.special.autoChargeRate": "{{weapon}} 자동 충전 속도",
|
||||
"stat.special.maxRadius": "{{weapon}} 파동 범위",
|
||||
"stat.special.maxRadius.explanation": "범위가 증가하더라도 파동의 속도는 변하지 않습니다.",
|
||||
"stat.special.radiusRange": "{{weapon}} 흡입 범위",
|
||||
"stat.special.radiusRangeMin": "{{weapon}} 흡입 범위 (최소)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}} 흡입 범위 (최대)",
|
||||
"stat.special.powerUpDuration": "{{weapon}} 효과 지속 시간",
|
||||
"damage.header.type": "종류",
|
||||
"damage.header.damage": "대미지",
|
||||
|
|
|
|||
|
|
@ -86,6 +86,7 @@
|
|||
"stat.special.autoChargeRate": "{{weapon}} auto laad snelheid",
|
||||
"stat.special.maxRadius": "{{weapon}} golf max radius",
|
||||
"stat.special.maxRadius.explanation": "De afgelegde snelheid van de golf blijft altijd hetzelfde onafhankelijk van de vergrootte radius.",
|
||||
"stat.special.radiusRange": "{{weapon}} zuig radius",
|
||||
"stat.special.radiusRangeMin": "{{weapon}} zuig radius (Minimum)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}} zuig radius (Maximum)",
|
||||
"stat.special.powerUpDuration": "{{weapon}} drank effect duratie"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -72,7 +72,8 @@
|
|||
"stat.special.autoChargeRate": "Automatyczna prędkośc ładowania {{weapon}}",
|
||||
"stat.special.maxRadius": "{{weapon}} fala maks. zasięg",
|
||||
"stat.special.maxRadius.explanation": "Szybkość poruszenia się fali jest taka sama mimo powięszkonego zasięgu.",
|
||||
"stat.special.radiusRange": "{{weapon}} sucking radius",
|
||||
"stat.special.radiusRangeMin": "{{weapon}} sucking radius (Minimalna)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}} sucking radius (Maksymalna)",
|
||||
"stat.special.powerUpDuration": "{{weapon}} drink effect duration",
|
||||
"damage.header.type": "Rodzaj",
|
||||
"damage.header.damage": "Szkoda",
|
||||
|
|
|
|||
|
|
@ -83,7 +83,8 @@
|
|||
"stat.special.autoChargeRate": "Taxa de carregamento automático da {{weapon}}",
|
||||
"stat.special.maxRadius": "Raio máximo da onda do {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "A velocidade de viagem da onda é sempre a mesma apesar do raio aumentado.",
|
||||
"stat.special.radiusRange": "Raio de sucção do {{weapon}}",
|
||||
"stat.special.radiusRangeMin": "Raio de sucção do {{weapon}} (Mínimo)",
|
||||
"stat.special.radiusRangeMax": "Raio de sucção do {{weapon}} (Máximo)",
|
||||
"stat.special.powerUpDuration": "Duração dos efeitos da bebida do {{weapon}}",
|
||||
"damage.header.type": "Tipo",
|
||||
"damage.header.damage": "Dano",
|
||||
|
|
|
|||
|
|
@ -72,7 +72,8 @@
|
|||
"stat.special.autoChargeRate": "Скорость автоматического заряда: {{weapon}}",
|
||||
"stat.special.maxRadius": "Максимальный радиус волны: {{weapon}}",
|
||||
"stat.special.maxRadius.explanation": "Скорость передвижения волны не меняется вместе с её радиусом.",
|
||||
"stat.special.radiusRange": "Радиус тяги: {{weapon}}",
|
||||
"stat.special.radiusRangeMin": "Радиус тяги: {{weapon}} (Минимум)",
|
||||
"stat.special.radiusRangeMax": "Радиус тяги: {{weapon}} (Максимум)",
|
||||
"stat.special.powerUpDuration": "Длительность эффекта напитка: {{weapon}}",
|
||||
"damage.header.type": "Тип",
|
||||
"damage.header.damage": "Урон",
|
||||
|
|
|
|||
|
|
@ -83,7 +83,8 @@
|
|||
"stat.special.autoChargeRate": "{{weapon}} 自动蓄力速度",
|
||||
"stat.special.maxRadius": "{{weapon}} 声波最大半径",
|
||||
"stat.special.maxRadius.explanation": "声波的移动速度保持恒定,不会因为半径变化改变。",
|
||||
"stat.special.radiusRange": "{{weapon}} 吸收范围",
|
||||
"stat.special.radiusRangeMin": "{{weapon}} 吸收范围 (最小值)",
|
||||
"stat.special.radiusRangeMax": "{{weapon}} 吸收范围 (最大值)",
|
||||
"stat.special.powerUpDuration": "{{weapon}} 饮料持续时间",
|
||||
"damage.header.type": "类型",
|
||||
"damage.header.damage": "伤害",
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user