Adds count filter for uses remaining

This commit is contained in:
kvan7
2025-10-07 21:48:04 -05:00
parent b5ef198494
commit 8212d217d4
12 changed files with 62 additions and 8 deletions

View File

@@ -108,7 +108,8 @@
"map_magic_monsters": "魔法怪物: +{0}%",
"map_rare_monsters": "稀有怪物: +{0}%",
"map_drop_chance": "換界石掉落機率: +{0}%",
"map_item_rarity": "物品稀有度: +{0}%"
"map_item_rarity": "物品稀有度: +{0}%",
"uses_remaining": "還能夠使用{0}次。"
},
"item_category": {
"prop": "類別:{0}",

View File

@@ -108,7 +108,8 @@
"map_magic_monsters": "Magische Monster: +{0}%",
"map_rare_monsters": "Seltene Monster: +{0}%",
"map_drop_chance": "Chance auf fallen gelassene Wegsteine: +{0}%",
"map_item_rarity": "Gegenstandsseltenheit: +{0}%"
"map_item_rarity": "Gegenstandsseltenheit: +{0}%",
"uses_remaining": "Nutzungen übrig: {0}"
},
"item_category": {
"prop": "Kategorie: {0}",

View File

@@ -109,7 +109,8 @@
"map_magic_monsters": "Magic Monsters: +{0}%",
"map_rare_monsters": "Rare Monsters: +{0}%",
"map_drop_chance": "Waystone Drop Chance: +{0}%",
"map_item_rarity": "Item Rarity: +{0}%"
"map_item_rarity": "Item Rarity: +{0}%",
"uses_remaining": "Uses Remaining: {0}"
},
"item_category": {
"prop": "Category: {0}",

View File

@@ -108,7 +108,8 @@
"map_magic_monsters": "Monstruos mágicos: +{0}%",
"map_rare_monsters": "Monstruos raros: +{0}%",
"map_drop_chance": "Probabilidad de botín de piedra guía: +{0}%",
"map_item_rarity": "Rareza de objetos: +{0}%"
"map_item_rarity": "Rareza de objetos: +{0}%",
"uses_remaining": "Quedan usos: {0}"
},
"item_category": {
"prop": "Categoría: {0}",

View File

@@ -108,7 +108,8 @@
"map_magic_monsters": "マジックモンスター: +{0}%",
"map_rare_monsters": "レアモンスター: +{0}%",
"map_drop_chance": "ウェイストーンドロップ確率: +{0}%",
"map_item_rarity": "アイテムレアリティ: +{0}%"
"map_item_rarity": "アイテムレアリティ: +{0}%",
"uses_remaining": "残り{0}回の使用可能"
},
"item_category": {
"prop": "カテゴリー: {0}",

View File

@@ -105,7 +105,8 @@
"map_magic_monsters": "마법 몬스터: +{0}%",
"map_rare_monsters": "희귀 몬스터: +{0}%",
"map_drop_chance": "경로석 출현 확률: +{0}%",
"map_item_rarity": "아이템 희귀도: +{0}%"
"map_item_rarity": "아이템 희귀도: +{0}%",
"uses_remaining": "남은 사용: {0}"
},
"item_category": {
"prop": "유형: {0}",

View File

@@ -102,7 +102,8 @@
"map_magic_monsters": "Monstros Mágicos: +{0}%",
"map_rare_monsters": "Monstros Raros: +{0}%",
"map_drop_chance": "Chance de Queda de Pedra Guia: +{0}%",
"map_item_rarity": "Raridade de Itens: +{0}%"
"map_item_rarity": "Raridade de Itens: +{0}%",
"uses_remaining": "utilizações restantes: {0}"
},
"item_category": {
"prop": "Categoria: {0}",

View File

@@ -124,7 +124,8 @@
"map_magic_monsters": "Волшебные монстры: +{0}%",
"map_rare_monsters": "Редкие монстры: +{0}%",
"map_drop_chance": "Шанс выпадения путевого камня: +{0}%",
"map_item_rarity": "Редкость предметов: +{0}%"
"map_item_rarity": "Редкость предметов: +{0}%",
"uses_remaining": "Осталось использовать: {0}"
},
"item_category": {
"prop": "Категория: {0}",

View File

@@ -130,6 +130,11 @@
)
"
/>
<filter-btn-numeric
v-if="filters.usesRemaining"
:filter="filters.usesRemaining"
:name="t('item.uses_remaining')"
/>
<filter-btn-logical
v-if="hasStats"
:collapse="statsVisibility.disabled"

View File

@@ -454,6 +454,20 @@ export function createFilters(
}
}
if (item.category === ItemCategory.Tablet) {
const usesRemaining = item.statsByType.find(
(t) => t.type === ModifierType.Implicit,
)!.sources[0].contributes!.value;
filters.usesRemaining = {
value: usesRemaining,
disabled: usesRemaining < 10,
};
// Remove the used stat
item.statsByType = item.statsByType.filter(
(t) => t.type !== ModifierType.Implicit,
);
}
if (
(item.rarity === ItemRarity.Normal ||
item.rarity === ItemRarity.Magic ||

View File

@@ -78,6 +78,7 @@ export interface ItemFilters {
areaLevel?: FilterNumeric;
heistWingsRevealed?: FilterNumeric;
sentinelCharge?: FilterNumeric;
usesRemaining?: FilterNumeric;
trade: {
offline: boolean;
onlineInLeague: boolean;

View File

@@ -108,6 +108,15 @@ const CONVERT_CURRENCY: Record<string, string> = {
"perfect-exalted-orb": "P. exalted",
};
const TABLET_USES_STATS = [
"Adds Irradiated to a Map \n# use remaining",
"Adds Ritual Altars to a Map \n# use remaining",
"Adds a Kalguuran Expedition to a Map \n# use remaining",
"Adds a Mirror of Delirium to a Map \n# use remaining",
"Adds an Otherworldy Breach to a Map \n# use remaining",
"Empowers the Map Boss of a Map \n# use remaining",
];
interface FilterBoolean {
option?: "true" | "false";
}
@@ -539,6 +548,23 @@ export function createTradeRequest(
);
}
// Custom fake pseudo filter for uses remaining
if (filters.usesRemaining) {
query.stats.push({
type: "count",
value: { min: 1 },
disabled: filters.usesRemaining.disabled,
filters: TABLET_USES_STATS.map((ref) => {
const stat = STAT_BY_REF(ref)!;
return {
id: stat.trade.ids[ModifierType.Implicit][0],
value: { min: filters.usesRemaining!.value },
disabled: false,
};
}),
});
}
// TRADE FILTERS
// BREAK ==============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================