feat: save lotus customization (#1864)
Closes #768 Reviewed-on: OpenWF/SpaceNinjaServer#1864 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									ac37702468
								
							
						
					
					
						commit
						781f01520f
					
				@ -96,7 +96,8 @@ import {
 | 
				
			|||||||
    IInvasionProgressDatabase,
 | 
					    IInvasionProgressDatabase,
 | 
				
			||||||
    IInvasionProgressClient,
 | 
					    IInvasionProgressClient,
 | 
				
			||||||
    IAccolades,
 | 
					    IAccolades,
 | 
				
			||||||
    IHubNpcCustomization
 | 
					    IHubNpcCustomization,
 | 
				
			||||||
 | 
					    ILotusCustomization
 | 
				
			||||||
} from "../../types/inventoryTypes/inventoryTypes";
 | 
					} from "../../types/inventoryTypes/inventoryTypes";
 | 
				
			||||||
import { IOid } from "../../types/commonTypes";
 | 
					import { IOid } from "../../types/commonTypes";
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
@ -780,6 +781,10 @@ const loreFragmentScansSchema = new Schema<ILoreFragmentScan>(
 | 
				
			|||||||
    { _id: false }
 | 
					    { _id: false }
 | 
				
			||||||
);
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const lotusCustomizationSchema = new Schema<ILotusCustomization>().add(ItemConfigSchema).add({
 | 
				
			||||||
 | 
					    Persona: String
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const evolutionProgressSchema = new Schema<IEvolutionProgress>(
 | 
					const evolutionProgressSchema = new Schema<IEvolutionProgress>(
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        Progress: Number,
 | 
					        Progress: Number,
 | 
				
			||||||
@ -1628,7 +1633,7 @@ const inventorySchema = new Schema<IInventoryDatabase, InventoryDocumentProps>(
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        //Purchase this new permanent skin from the Lotus customization options in Personal Quarters located in your Orbiter.
 | 
					        //Purchase this new permanent skin from the Lotus customization options in Personal Quarters located in your Orbiter.
 | 
				
			||||||
        //https://warframe.fandom.com/wiki/Lotus#The_New_War
 | 
					        //https://warframe.fandom.com/wiki/Lotus#The_New_War
 | 
				
			||||||
        LotusCustomization: Schema.Types.Mixed,
 | 
					        LotusCustomization: { type: lotusCustomizationSchema, default: undefined },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        //Progress+Rank+ItemType(ZarimanPumpShotgun)
 | 
					        //Progress+Rank+ItemType(ZarimanPumpShotgun)
 | 
				
			||||||
        //https://warframe.fandom.com/wiki/Incarnon
 | 
					        //https://warframe.fandom.com/wiki/Incarnon
 | 
				
			||||||
 | 
				
			|||||||
@ -161,6 +161,11 @@ export const handleInventoryItemConfigChange = async (
 | 
				
			|||||||
                }
 | 
					                }
 | 
				
			||||||
                break;
 | 
					                break;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					            case "LotusCustomization": {
 | 
				
			||||||
 | 
					                logger.debug(`saved LotusCustomization`, equipmentChanges.LotusCustomization);
 | 
				
			||||||
 | 
					                inventory.LotusCustomization = equipmentChanges.LotusCustomization;
 | 
				
			||||||
 | 
					                break;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
            default: {
 | 
					            default: {
 | 
				
			||||||
                if (equipmentKeys.includes(equipmentName as TEquipmentKey) && equipmentName != "ValidNewLoadoutId") {
 | 
					                if (equipmentKeys.includes(equipmentName as TEquipmentKey) && equipmentName != "ValidNewLoadoutId") {
 | 
				
			||||||
                    logger.debug(`general Item config saved of type ${equipmentName}`, {
 | 
					                    logger.debug(`general Item config saved of type ${equipmentName}`, {
 | 
				
			||||||
 | 
				
			|||||||
@ -328,7 +328,7 @@ export interface IInventoryClient extends IDailyAffiliations, InventoryClientEqu
 | 
				
			|||||||
    BlessingCooldown?: IMongoDate;
 | 
					    BlessingCooldown?: IMongoDate;
 | 
				
			||||||
    CrewShipRawSalvage: ITypeCount[];
 | 
					    CrewShipRawSalvage: ITypeCount[];
 | 
				
			||||||
    CrewMembers: ICrewMemberClient[];
 | 
					    CrewMembers: ICrewMemberClient[];
 | 
				
			||||||
    LotusCustomization: ILotusCustomization;
 | 
					    LotusCustomization?: ILotusCustomization;
 | 
				
			||||||
    UseAdultOperatorLoadout?: boolean;
 | 
					    UseAdultOperatorLoadout?: boolean;
 | 
				
			||||||
    NemesisAbandonedRewards: string[];
 | 
					    NemesisAbandonedRewards: string[];
 | 
				
			||||||
    LastInventorySync: IOid;
 | 
					    LastInventorySync: IOid;
 | 
				
			||||||
 | 
				
			|||||||
@ -6,7 +6,8 @@ import {
 | 
				
			|||||||
    ICrewShipMembersClient,
 | 
					    ICrewShipMembersClient,
 | 
				
			||||||
    ICrewShipWeapon,
 | 
					    ICrewShipWeapon,
 | 
				
			||||||
    IFlavourItem,
 | 
					    IFlavourItem,
 | 
				
			||||||
    ILoadoutConfigClient
 | 
					    ILoadoutConfigClient,
 | 
				
			||||||
 | 
					    ILotusCustomization
 | 
				
			||||||
} from "./inventoryTypes/inventoryTypes";
 | 
					} from "./inventoryTypes/inventoryTypes";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export interface ISaveLoadoutRequest {
 | 
					export interface ISaveLoadoutRequest {
 | 
				
			||||||
@ -43,6 +44,7 @@ export interface ISaveLoadoutRequest {
 | 
				
			|||||||
    EquippedEmotes: string[];
 | 
					    EquippedEmotes: string[];
 | 
				
			||||||
    UseAdultOperatorLoadout: boolean;
 | 
					    UseAdultOperatorLoadout: boolean;
 | 
				
			||||||
    WeaponSkins: IItemEntry;
 | 
					    WeaponSkins: IItemEntry;
 | 
				
			||||||
 | 
					    LotusCustomization: ILotusCustomization;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export type ISaveLoadoutRequestNoUpgradeVer = Omit<ISaveLoadoutRequest, "UpgradeVer">;
 | 
					export type ISaveLoadoutRequestNoUpgradeVer = Omit<ISaveLoadoutRequest, "UpgradeVer">;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user