2023-10-10 11:03:20 +00:00
|
|
|
import { EquipmentBuildType } from "../../../models/enums/EquipmentBuildType";
|
|
|
|
import { Health, IQuestStatus, Productive, Skills, TraderData } from "../common/tables/IBotBase";
|
2023-03-03 15:23:46 +00:00
|
|
|
import { Item, Upd } from "../common/tables/IItem";
|
|
|
|
import { IQuest } from "../common/tables/IQuest";
|
|
|
|
import { IPmcDataRepeatableQuest } from "../common/tables/IRepeatableQuests";
|
|
|
|
import { IRagfairOffer } from "../ragfair/IRagfairOffer";
|
|
|
|
|
|
|
|
export interface IItemEventRouterBase
|
|
|
|
{
|
|
|
|
warnings: Warning[]
|
|
|
|
profileChanges: TProfileChanges | ""
|
|
|
|
}
|
|
|
|
|
|
|
|
export type TProfileChanges = Record<string, ProfileChange>
|
|
|
|
|
|
|
|
export interface Warning
|
|
|
|
{
|
|
|
|
index: number
|
|
|
|
errmsg: string
|
|
|
|
code?: string
|
|
|
|
data?: any
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ProfileChange
|
|
|
|
{
|
|
|
|
_id: string
|
|
|
|
experience: number
|
|
|
|
quests: IQuest[]
|
|
|
|
ragFairOffers: IRagfairOffer[]
|
2023-10-10 11:03:20 +00:00
|
|
|
weaponBuilds: IWeaponBuildChange[]
|
|
|
|
equipmentBuilds: IEquipmentBuildChange[]
|
2023-03-03 15:23:46 +00:00
|
|
|
items: ItemChanges
|
|
|
|
production: Record<string, Productive>
|
|
|
|
/** Hideout area improvement id */
|
|
|
|
improvements: Record<string, Improvement>
|
|
|
|
skills: Skills
|
|
|
|
health: Health
|
2023-10-10 11:03:20 +00:00
|
|
|
traderRelations: Record<string, TraderData>
|
2023-03-03 15:23:46 +00:00
|
|
|
repeatableQuests?: IPmcDataRepeatableQuest[]
|
|
|
|
recipeUnlocked: Record<string, boolean>
|
2023-10-10 11:03:20 +00:00
|
|
|
changedHideoutStashes?: Record<string, IHideoutStashItem>
|
|
|
|
questsStatus: IQuestStatus[]
|
2023-03-03 15:23:46 +00:00
|
|
|
}
|
|
|
|
|
2023-10-10 11:03:20 +00:00
|
|
|
export interface IHideoutStashItem
|
2023-03-03 15:23:46 +00:00
|
|
|
{
|
2023-10-10 11:03:20 +00:00
|
|
|
Id: string
|
|
|
|
Tpl: string
|
2023-03-03 15:23:46 +00:00
|
|
|
}
|
|
|
|
|
2023-10-10 11:03:20 +00:00
|
|
|
export interface IWeaponBuildChange
|
2023-03-03 15:23:46 +00:00
|
|
|
{
|
|
|
|
id: string
|
|
|
|
name: string
|
|
|
|
root: string
|
|
|
|
items: Item[]
|
|
|
|
}
|
|
|
|
|
2023-10-10 11:03:20 +00:00
|
|
|
export interface IEquipmentBuildChange
|
|
|
|
{
|
|
|
|
id: string
|
|
|
|
name: string
|
|
|
|
root: string
|
|
|
|
items: Item[]
|
|
|
|
type: string
|
|
|
|
fastpanel: any[]
|
|
|
|
buildType: EquipmentBuildType
|
|
|
|
}
|
|
|
|
|
2023-03-03 15:23:46 +00:00
|
|
|
export interface ItemChanges
|
|
|
|
{
|
|
|
|
new: Product[]
|
|
|
|
change: Product[]
|
|
|
|
del: Product[]
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface Improvement
|
|
|
|
{
|
|
|
|
completed: boolean,
|
|
|
|
improveCompleteTimestamp: number
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface Product
|
|
|
|
{
|
|
|
|
_id: string
|
|
|
|
_tpl?: string
|
|
|
|
parentId?: string
|
|
|
|
slotId?: string
|
|
|
|
location?: ItemChangeLocation
|
|
|
|
upd?: Upd
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ItemChangeLocation
|
|
|
|
{
|
|
|
|
x: number,
|
|
|
|
y: number,
|
|
|
|
r: number,
|
|
|
|
isSearched?: boolean
|
|
|
|
}
|