fix: ayatan statue saving (#461)
This commit is contained in:
		
							parent
							
								
									f8a805d84f
								
							
						
					
					
						commit
						07c84214ac
					
				@ -16,7 +16,8 @@ import {
 | 
				
			|||||||
    InventorySlot,
 | 
					    InventorySlot,
 | 
				
			||||||
    IWeaponSkinClient,
 | 
					    IWeaponSkinClient,
 | 
				
			||||||
    TEquipmentKey,
 | 
					    TEquipmentKey,
 | 
				
			||||||
    equipmentKeys
 | 
					    equipmentKeys,
 | 
				
			||||||
 | 
					    IFusionTreasure
 | 
				
			||||||
} from "@/src/types/inventoryTypes/inventoryTypes";
 | 
					} from "@/src/types/inventoryTypes/inventoryTypes";
 | 
				
			||||||
import { IGenericUpdate } from "../types/genericUpdate";
 | 
					import { IGenericUpdate } from "../types/genericUpdate";
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
@ -650,6 +651,26 @@ export const addMods = (inventory: IInventoryDatabaseDocument, itemsArray: IRawU
 | 
				
			|||||||
    });
 | 
					    });
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export const addFusionTreasures = (
 | 
				
			||||||
 | 
					    inventory: IInventoryDatabaseDocument,
 | 
				
			||||||
 | 
					    itemsArray: IFusionTreasure[] | undefined
 | 
				
			||||||
 | 
					) => {
 | 
				
			||||||
 | 
					    const { FusionTreasures } = inventory;
 | 
				
			||||||
 | 
					    itemsArray?.forEach(({ ItemType, ItemCount, Sockets }) => {
 | 
				
			||||||
 | 
					        const itemIndex = FusionTreasures.findIndex(i => {
 | 
				
			||||||
 | 
					            i.ItemType === ItemType;
 | 
				
			||||||
 | 
					            i.Sockets === Sockets;
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (itemIndex !== -1) {
 | 
				
			||||||
 | 
					            FusionTreasures[itemIndex].ItemCount += ItemCount;
 | 
				
			||||||
 | 
					            inventory.markModified(`FusionTreasures.${itemIndex}.ItemCount`);
 | 
				
			||||||
 | 
					        } else {
 | 
				
			||||||
 | 
					            FusionTreasures.push({ ItemCount, ItemType, Sockets });
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const updateChallengeProgress = async (challenges: IUpdateChallengeProgressRequest, accountId: string) => {
 | 
					export const updateChallengeProgress = async (challenges: IUpdateChallengeProgressRequest, accountId: string) => {
 | 
				
			||||||
    const inventory = await getInventory(accountId);
 | 
					    const inventory = await getInventory(accountId);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -704,8 +725,17 @@ const addMissionComplete = (inventory: IInventoryDatabaseDocument, { Tag, Comple
 | 
				
			|||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const missionInventoryUpdate = async (data: IMissionInventoryUpdateRequest, accountId: string) => {
 | 
					export const missionInventoryUpdate = async (data: IMissionInventoryUpdateRequest, accountId: string) => {
 | 
				
			||||||
    const { RawUpgrades, MiscItems, RegularCredits, ChallengeProgress, FusionPoints, Consumables, Recipes, Missions } =
 | 
					    const {
 | 
				
			||||||
        data;
 | 
					        RawUpgrades,
 | 
				
			||||||
 | 
					        MiscItems,
 | 
				
			||||||
 | 
					        RegularCredits,
 | 
				
			||||||
 | 
					        ChallengeProgress,
 | 
				
			||||||
 | 
					        FusionPoints,
 | 
				
			||||||
 | 
					        Consumables,
 | 
				
			||||||
 | 
					        Recipes,
 | 
				
			||||||
 | 
					        Missions,
 | 
				
			||||||
 | 
					        FusionTreasures
 | 
				
			||||||
 | 
					    } = data;
 | 
				
			||||||
    const inventory = await getInventory(accountId);
 | 
					    const inventory = await getInventory(accountId);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // credits
 | 
					    // credits
 | 
				
			||||||
@ -762,6 +792,7 @@ export const missionInventoryUpdate = async (data: IMissionInventoryUpdateReques
 | 
				
			|||||||
    addConsumables(inventory, Consumables);
 | 
					    addConsumables(inventory, Consumables);
 | 
				
			||||||
    addRecipes(inventory, Recipes);
 | 
					    addRecipes(inventory, Recipes);
 | 
				
			||||||
    addChallenges(inventory, ChallengeProgress);
 | 
					    addChallenges(inventory, ChallengeProgress);
 | 
				
			||||||
 | 
					    addFusionTreasures(inventory, FusionTreasures);
 | 
				
			||||||
    if (Missions) {
 | 
					    if (Missions) {
 | 
				
			||||||
        addMissionComplete(inventory, Missions);
 | 
					        addMissionComplete(inventory, Missions);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -12,7 +12,8 @@ import {
 | 
				
			|||||||
    IRawUpgrade,
 | 
					    IRawUpgrade,
 | 
				
			||||||
    ISeasonChallenge,
 | 
					    ISeasonChallenge,
 | 
				
			||||||
    TSolarMapRegion,
 | 
					    TSolarMapRegion,
 | 
				
			||||||
    TEquipmentKey
 | 
					    TEquipmentKey,
 | 
				
			||||||
 | 
					    IFusionTreasure
 | 
				
			||||||
} from "./inventoryTypes/inventoryTypes";
 | 
					} from "./inventoryTypes/inventoryTypes";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export interface IArtifactsRequest {
 | 
					export interface IArtifactsRequest {
 | 
				
			||||||
@ -61,6 +62,7 @@ export interface IMissionInventoryUpdateRequest {
 | 
				
			|||||||
    RawUpgrades?: IRawUpgrade[];
 | 
					    RawUpgrades?: IRawUpgrade[];
 | 
				
			||||||
    MiscItems?: IMiscItem[];
 | 
					    MiscItems?: IMiscItem[];
 | 
				
			||||||
    Consumables?: IConsumable[];
 | 
					    Consumables?: IConsumable[];
 | 
				
			||||||
 | 
					    FusionTreasures?: IFusionTreasure[];
 | 
				
			||||||
    Recipes?: IConsumable[];
 | 
					    Recipes?: IConsumable[];
 | 
				
			||||||
    RegularCredits?: number;
 | 
					    RegularCredits?: number;
 | 
				
			||||||
    ChallengeProgress?: IChallengeProgress[];
 | 
					    ChallengeProgress?: IChallengeProgress[];
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user