forked from OpenWF/SpaceNinjaServer
		
	chore: handle zealoid prelate stripped rewards (#1515)
Reviewed-on: OpenWF/SpaceNinjaServer#1515 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
							
								
									39be095818
								
							
						
					
					
						commit
						327b834b07
					
				@ -602,10 +602,24 @@ export const addMissionRewards = async (
 | 
				
			|||||||
            if (!droptable) {
 | 
					            if (!droptable) {
 | 
				
			||||||
                logger.error(`unknown droptable ${si.DropTable}`);
 | 
					                logger.error(`unknown droptable ${si.DropTable}`);
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
                for (let i = 0; i != si.DROP_MOD.length; ++i) {
 | 
					                const modsPool = droptable[0].items;
 | 
				
			||||||
                    for (const pool of droptable) {
 | 
					                const blueprintsPool = (droptable.length > 1 ? droptable[1] : droptable[0]).items;
 | 
				
			||||||
                        const reward = getRandomReward(pool.items)!;
 | 
					                if (si.DROP_MOD) {
 | 
				
			||||||
                        logger.debug(`stripped droptable rolled`, reward);
 | 
					                    for (let i = 0; i != si.DROP_MOD.length; ++i) {
 | 
				
			||||||
 | 
					                        const reward = getRandomReward(modsPool)!;
 | 
				
			||||||
 | 
					                        logger.debug(`stripped droptable (mods pool) rolled`, reward);
 | 
				
			||||||
 | 
					                        await addItem(inventory, reward.type);
 | 
				
			||||||
 | 
					                        MissionRewards.push({
 | 
				
			||||||
 | 
					                            StoreItem: toStoreItem(reward.type),
 | 
				
			||||||
 | 
					                            ItemCount: 1,
 | 
				
			||||||
 | 
					                            FromEnemyCache: true // to show "identified"
 | 
				
			||||||
 | 
					                        });
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                if (si.DROP_BLUEPRINT) {
 | 
				
			||||||
 | 
					                    for (let i = 0; i != si.DROP_BLUEPRINT.length; ++i) {
 | 
				
			||||||
 | 
					                        const reward = getRandomReward(blueprintsPool)!;
 | 
				
			||||||
 | 
					                        logger.debug(`stripped droptable (blueprints pool) rolled`, reward);
 | 
				
			||||||
                        await addItem(inventory, reward.type);
 | 
					                        await addItem(inventory, reward.type);
 | 
				
			||||||
                        MissionRewards.push({
 | 
					                        MissionRewards.push({
 | 
				
			||||||
                            StoreItem: toStoreItem(reward.type),
 | 
					                            StoreItem: toStoreItem(reward.type),
 | 
				
			||||||
 | 
				
			|||||||
@ -101,7 +101,8 @@ export type IMissionInventoryUpdateRequest = {
 | 
				
			|||||||
    Upgrades?: IUpgradeClient[]; // riven challenge progress
 | 
					    Upgrades?: IUpgradeClient[]; // riven challenge progress
 | 
				
			||||||
    StrippedItems?: {
 | 
					    StrippedItems?: {
 | 
				
			||||||
        DropTable: string;
 | 
					        DropTable: string;
 | 
				
			||||||
        DROP_MOD: number[];
 | 
					        DROP_MOD?: number[];
 | 
				
			||||||
 | 
					        DROP_BLUEPRINT?: number[];
 | 
				
			||||||
    }[];
 | 
					    }[];
 | 
				
			||||||
    DeathMarks?: string[];
 | 
					    DeathMarks?: string[];
 | 
				
			||||||
    Nemesis?: number;
 | 
					    Nemesis?: number;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user