feat: earn focus xp with a lens

Co-Authored-By: VampireKitten <dynamightkobold@gmail.com>
This commit is contained in:
Sainan 2025-01-27 13:35:20 +01:00
parent 97bec71b05
commit 812f190e72
3 changed files with 30 additions and 0 deletions

View File

@ -909,6 +909,30 @@ export const addFusionTreasures = (
});
};
export const addFocusXpIncreases = (inventory: TInventoryDatabaseDocument, focusXpPlus: number[] | undefined): void => {
enum FocusType {
AP_UNIVERSAL,
AP_ATTACK,
AP_DEFENSE,
AP_TACTIC,
AP_POWER,
AP_PRECEPT,
AP_FUSION,
AP_WARD,
AP_UMBRA,
AP_ANY
}
if (focusXpPlus) {
inventory.FocusXP ??= { AP_ATTACK: 0, AP_DEFENSE: 0, AP_TACTIC: 0, AP_POWER: 0, AP_WARD: 0 };
inventory.FocusXP.AP_ATTACK += focusXpPlus[FocusType.AP_ATTACK];
inventory.FocusXP.AP_DEFENSE += focusXpPlus[FocusType.AP_DEFENSE];
inventory.FocusXP.AP_TACTIC += focusXpPlus[FocusType.AP_TACTIC];
inventory.FocusXP.AP_POWER += focusXpPlus[FocusType.AP_POWER];
inventory.FocusXP.AP_WARD += focusXpPlus[FocusType.AP_WARD];
}
};
export const updateChallengeProgress = async (
challenges: IUpdateChallengeProgressRequest,
accountId: string

View File

@ -6,6 +6,7 @@ import { equipmentKeys, IInventoryDatabase, TEquipmentKey } from "@/src/types/in
import {
addChallenges,
addConsumables,
addFocusXpIncreases,
addFusionTreasures,
addGearExpByCategory,
addItem,
@ -145,6 +146,10 @@ export const addMissionInventoryUpdates = (
inventoryChanges.FusionPoints = fusionPoints;
break;
}
case "FocusXpIncreases": {
addFocusXpIncreases(inventory, value);
break;
}
default:
// Equipment XP updates
if (equipmentKeys.includes(key as TEquipmentKey)) {

View File

@ -72,6 +72,7 @@ export type IMissionInventoryUpdateRequest = {
FpsMax: number;
FpsSamples: number;
EvolutionProgress?: IEvolutionProgress[];
FocusXpIncreases?: number[];
} & {
[K in TEquipmentKey]?: IEquipmentClient[];
};