reason of hidding, tmp disable local prop on uniques

This commit is contained in:
Alexander Drozdov
2020-02-20 03:29:17 +02:00
parent f423e2f26f
commit d23e4da48f
2 changed files with 39 additions and 24 deletions
+11 -4
View File
@@ -23,10 +23,17 @@
</div>
</div>
<div class="flex">
<div class="w-5 flex">
<span v-if="filter.hidden" class="text-xs leading-none text-gray-600">
<i class="fas fa-eye-slash"></i>
</span>
<div class="w-5 flex items-start">
<ui-popper v-if="filter.hidden" tag-name="div" class="flex" :options="{ placement: 'right-start' }">
<template slot="reference">
<span class="text-xs leading-none text-gray-600 cursor-pointer">
<i class="fas fa-eye-slash"></i>
</span>
</template>
<div class="popper">
<div>{{ filter.hidden }}</div>
</div>
</ui-popper>
</div>
<div class="flex-1 flex items-start">
<span v-if="showTypeTags"
+28 -20
View File
@@ -35,14 +35,11 @@ export const INTERNAL_TRADE_ID = [
'weapon.physical_dps'
]
export function initUiModFilters (item: ParsedItem): UiModFilter[] {
let parsedMods = item.modifiers
const modFilters = [] as Writeable<UiModFilter>[]
function filtersFromLocalProp (item: ParsedItem, modFilters: Writeable<UiModFilter>[]) {
if (item.props.armour) {
const totalQ20 = Math.floor(propAt20Quality(item.props.armour, QUALITY_STATS.ARMOUR, item))
modFilters.unshift({
modFilters.push({
tradeId: 'armour.armour' as INTERNAL_TRADE_ID,
text: 'Armour',
type: 'armour',
@@ -58,7 +55,7 @@ export function initUiModFilters (item: ParsedItem): UiModFilter[] {
if (item.props.evasion) {
const totalQ20 = Math.floor(propAt20Quality(item.props.evasion, QUALITY_STATS.EVASION, item))
modFilters.unshift({
modFilters.push({
tradeId: 'armour.evasion_rating' as INTERNAL_TRADE_ID,
text: 'Evasion Rating',
type: 'armour',
@@ -74,7 +71,7 @@ export function initUiModFilters (item: ParsedItem): UiModFilter[] {
if (item.props.energyShield) {
const totalQ20 = Math.floor(propAt20Quality(item.props.energyShield, QUALITY_STATS.ENERGY_SHIELD, item))
modFilters.unshift({
modFilters.push({
tradeId: 'armour.energy_shield' as INTERNAL_TRADE_ID,
text: 'Energy Shield',
type: 'armour',
@@ -92,7 +89,7 @@ export function initUiModFilters (item: ParsedItem): UiModFilter[] {
const dpsQ20 = Math.floor((damageQ20[0] + damageQ20[1]) / 2 * item.props.attackSpeed!)
modFilters.unshift({
modFilters.push({
tradeId: 'weapon.physical_dps' as INTERNAL_TRADE_ID,
text: 'Physical DPS',
type: 'weapon',
@@ -104,21 +101,16 @@ export function initUiModFilters (item: ParsedItem): UiModFilter[] {
max: undefined
})
}
}
if (
item.props.armour ||
item.props.evasion ||
item.props.energyShield ||
item.props.blockChance ||
item.props.attackSpeed ||
item.props.critChance ||
item.props.elementalDamage ||
item.props.physicalDamage
) {
parsedMods = parsedMods.filter(mod => !localStats.has(mod.modInfo.text))
export function initUiModFilters (item: ParsedItem): UiModFilter[] {
const modFilters = [] as Writeable<UiModFilter>[]
if (item.rarity !== ItemRarity.Unique) {
filtersFromLocalProp(item, modFilters)
}
modFilters.push(...parsedMods.map(mod => {
modFilters.push(...item.modifiers.map(mod => {
const filter: Writeable<UiModFilter> = {
tradeId: mod.modInfo.types.find(type => type.name === mod.type)!.tradeId,
text: mod.modInfo.text,
@@ -142,6 +134,22 @@ export function initUiModFilters (item: ParsedItem): UiModFilter[] {
return filter
}))
if (
item.rarity !== ItemRarity.Unique &&
(item.props.armour ||
item.props.evasion ||
item.props.energyShield ||
item.props.blockChance ||
item.props.attackSpeed ||
item.props.critChance ||
item.props.elementalDamage ||
item.props.physicalDamage)
) {
modFilters
.filter(f => localStats.has(f.text))
.forEach(f => { f.hidden = 'Contributes to the item property' })
}
return modFilters
}