feat: custom item names #307
@ -1,7 +1,7 @@
 | 
				
			|||||||
import { RequestHandler } from "express";
 | 
					import { RequestHandler } from "express";
 | 
				
			||||||
import { IUpgradesRequest } from "@/src/types/requestTypes";
 | 
					import { IUpgradesRequest } from "@/src/types/requestTypes";
 | 
				
			||||||
import { FocusSchool, IEquipmentDatabase } from "@/src/types/inventoryTypes/commonInventoryTypes";
 | 
					import { FocusSchool, IEquipmentDatabase } from "@/src/types/inventoryTypes/commonInventoryTypes";
 | 
				
			||||||
import { IMiscItem, IEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes";
 | 
					import { IMiscItem, TEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes";
 | 
				
			||||||
import { getAccountIdForRequest } from "@/src/services/loginService";
 | 
					import { getAccountIdForRequest } from "@/src/services/loginService";
 | 
				
			||||||
import { addMiscItems, getInventory, updateCurrency } from "@/src/services/inventoryService";
 | 
					import { addMiscItems, getInventory, updateCurrency } from "@/src/services/inventoryService";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -28,7 +28,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
 | 
				
			|||||||
        switch (operation.UpgradeRequirement) {
 | 
					        switch (operation.UpgradeRequirement) {
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/OrokinReactor":
 | 
					            case "/Lotus/Types/Items/MiscItems/OrokinReactor":
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/OrokinCatalyst":
 | 
					            case "/Lotus/Types/Items/MiscItems/OrokinCatalyst":
 | 
				
			||||||
                for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
 | 
					                for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
 | 
				
			||||||
                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
					                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
				
			||||||
                        item.Features ??= 0;
 | 
					                        item.Features ??= 0;
 | 
				
			||||||
                        item.Features |= 1;
 | 
					                        item.Features |= 1;
 | 
				
			||||||
@ -38,7 +38,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
 | 
				
			|||||||
                break;
 | 
					                break;
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/UtilityUnlocker":
 | 
					            case "/Lotus/Types/Items/MiscItems/UtilityUnlocker":
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/WeaponUtilityUnlocker":
 | 
					            case "/Lotus/Types/Items/MiscItems/WeaponUtilityUnlocker":
 | 
				
			||||||
                for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
 | 
					                for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
 | 
				
			||||||
                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
					                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
				
			||||||
                        item.Features ??= 0;
 | 
					                        item.Features ??= 0;
 | 
				
			||||||
                        item.Features |= 2;
 | 
					                        item.Features |= 2;
 | 
				
			||||||
@ -49,7 +49,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
 | 
				
			|||||||
            case "/Lotus/Types/Items/MiscItems/WeaponPrimaryArcaneUnlocker":
 | 
					            case "/Lotus/Types/Items/MiscItems/WeaponPrimaryArcaneUnlocker":
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/WeaponSecondaryArcaneUnlocker":
 | 
					            case "/Lotus/Types/Items/MiscItems/WeaponSecondaryArcaneUnlocker":
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/WeaponMeleeArcaneUnlocker":
 | 
					            case "/Lotus/Types/Items/MiscItems/WeaponMeleeArcaneUnlocker":
 | 
				
			||||||
                for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
 | 
					                for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
 | 
				
			||||||
                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
					                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
				
			||||||
                        item.Features ??= 0;
 | 
					                        item.Features ??= 0;
 | 
				
			||||||
                        item.Features |= 32;
 | 
					                        item.Features |= 32;
 | 
				
			||||||
@ -61,7 +61,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
 | 
				
			|||||||
            case "/Lotus/Types/Items/MiscItems/FormaUmbra":
 | 
					            case "/Lotus/Types/Items/MiscItems/FormaUmbra":
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/FormaAura":
 | 
					            case "/Lotus/Types/Items/MiscItems/FormaAura":
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/FormaStance":
 | 
					            case "/Lotus/Types/Items/MiscItems/FormaStance":
 | 
				
			||||||
                for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
 | 
					                for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
 | 
				
			||||||
                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
					                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
				
			||||||
                        item.XP = 0;
 | 
					                        item.XP = 0;
 | 
				
			||||||
                        setSlotPolarity(item, operation.PolarizeSlot, operation.PolarizeValue);
 | 
					                        setSlotPolarity(item, operation.PolarizeSlot, operation.PolarizeValue);
 | 
				
			||||||
@ -72,7 +72,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
 | 
				
			|||||||
                }
 | 
					                }
 | 
				
			||||||
                break;
 | 
					                break;
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/ModSlotUnlocker":
 | 
					            case "/Lotus/Types/Items/MiscItems/ModSlotUnlocker":
 | 
				
			||||||
                for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
 | 
					                for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
 | 
				
			||||||
                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
					                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
				
			||||||
                        item.ModSlotPurchases ??= 0;
 | 
					                        item.ModSlotPurchases ??= 0;
 | 
				
			||||||
                        item.ModSlotPurchases += 1;
 | 
					                        item.ModSlotPurchases += 1;
 | 
				
			||||||
@ -87,7 +87,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
 | 
				
			|||||||
                }
 | 
					                }
 | 
				
			||||||
                break;
 | 
					                break;
 | 
				
			||||||
            case "/Lotus/Types/Items/MiscItems/CustomizationSlotUnlocker":
 | 
					            case "/Lotus/Types/Items/MiscItems/CustomizationSlotUnlocker":
 | 
				
			||||||
                for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
 | 
					                for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
 | 
				
			||||||
                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
					                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
				
			||||||
                        item.CustomizationSlotPurchases ??= 0;
 | 
					                        item.CustomizationSlotPurchases ??= 0;
 | 
				
			||||||
                        item.CustomizationSlotPurchases += 1;
 | 
					                        item.CustomizationSlotPurchases += 1;
 | 
				
			||||||
@ -103,7 +103,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
 | 
				
			|||||||
                break;
 | 
					                break;
 | 
				
			||||||
            case "":
 | 
					            case "":
 | 
				
			||||||
                console.assert(operation.OperationType == "UOT_SWAP_POLARITY");
 | 
					                console.assert(operation.OperationType == "UOT_SWAP_POLARITY");
 | 
				
			||||||
                for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
 | 
					                for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
 | 
				
			||||||
                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
					                    if (item._id.toString() == payload.ItemId.$oid) {
 | 
				
			||||||
                        for (let i = 0; i != operation.PolarityRemap.length; ++i) {
 | 
					                        for (let i = 0; i != operation.PolarityRemap.length; ++i) {
 | 
				
			||||||
                            if (operation.PolarityRemap[i].Slot != i) {
 | 
					                            if (operation.PolarityRemap[i].Slot != i) {
 | 
				
			||||||
 | 
				
			|||||||
@ -59,7 +59,7 @@ export interface ITypeCount {
 | 
				
			|||||||
    ItemCount: number;
 | 
					    ItemCount: number;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export type IEquipmentKey =
 | 
					export type TEquipmentKey =
 | 
				
			||||||
    | "Suits"
 | 
					    | "Suits"
 | 
				
			||||||
    | "LongGuns"
 | 
					    | "LongGuns"
 | 
				
			||||||
    | "Pistols"
 | 
					    | "Pistols"
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user