diff --git a/project/src/models/eft/match/IStartLocalRaidRequestData.ts b/project/src/models/eft/match/IStartLocalRaidRequestData.ts index f0c923c7..8bbc1ff6 100644 --- a/project/src/models/eft/match/IStartLocalRaidRequestData.ts +++ b/project/src/models/eft/match/IStartLocalRaidRequestData.ts @@ -1,18 +1,14 @@ +import type { ITransition } from "@spt/models/eft/match/IStartLocalRaidResponseData"; +import type { TransitionType } from "@spt/models/enums/TransitionType"; + export interface IStartLocalRaidRequestData { serverId: string; location: string; timeVariant: string; mode: string; playerSide: string; - isLocationTransition: boolean; - transition: IStartLocalRaidTransition; + transitionType: TransitionType; + transition: ITransition; /** Should loot generation be skipped, default false */ sptSkipLootGeneration?: boolean; } - -export interface IStartLocalRaidTransition { - isLocationTransition: boolean; - transitionRaidId: string; - transitionCount: number; - visitedLocations: string[]; -} diff --git a/project/src/models/eft/match/IStartLocalRaidResponseData.ts b/project/src/models/eft/match/IStartLocalRaidResponseData.ts index a9528343..695a72c5 100644 --- a/project/src/models/eft/match/IStartLocalRaidResponseData.ts +++ b/project/src/models/eft/match/IStartLocalRaidResponseData.ts @@ -1,13 +1,14 @@ import { ILocationBase } from "@spt/models/eft/common/ILocationBase"; import { IInsuredItem } from "@spt/models/eft/common/tables/IBotBase"; import { ILocationServices } from "@spt/models/eft/common/tables/ILocationServices"; +import { TransitionType } from "@spt/models/enums/TransitionType"; export interface IStartLocalRaidResponseData { serverId: string; serverSettings: ILocationServices; profile: IProfileInsuredItems; locationLoot: ILocationBase; - transitionType: string; + transitionType: TransitionType; transition: ITransition; } @@ -16,7 +17,7 @@ export interface IProfileInsuredItems { } export interface ITransition { - isLocationTransition: boolean; + transitionType: TransitionType; transitionRaidId: string; transitionCount: number; visitedLocations: string[]; diff --git a/project/src/services/LocationLifecycleService.ts b/project/src/services/LocationLifecycleService.ts index c14d48c6..005505f2 100644 --- a/project/src/services/LocationLifecycleService.ts +++ b/project/src/services/LocationLifecycleService.ts @@ -49,6 +49,7 @@ import { RandomUtil } from "@spt/utils/RandomUtil"; import { TimeUtil } from "@spt/utils/TimeUtil"; import { ICloner } from "@spt/utils/cloners/ICloner"; import { inject, injectable } from "tsyringe"; +import { TransitionType } from "../models/enums/TransitionType"; @injectable() export class LocationLifecycleService { @@ -106,8 +107,9 @@ export class LocationLifecycleService { serverSettings: this.databaseService.getLocationServices(), // TODO - is this per map or global? profile: { insuredItems: playerProfile.InsuredItems }, locationLoot: this.generateLocationAndLoot(request.location, !request.sptSkipLootGeneration), + transitionType: TransitionType.None, transition: { - isLocationTransition: false, + transitionType: TransitionType.None, transitionRaidId: this.hashUtil.generate(), transitionCount: 0, visitedLocations: [], @@ -126,7 +128,7 @@ export class LocationLifecycleService { ?.getValue(); if (transitionData) { this.logger.success(`Player: ${sessionId} is in transit to ${request.location}`); - result.transition.isLocationTransition = true; + result.transition.transitionType = TransitionType.Common; result.transition.transitionRaidId = transitionData.transitionRaidId; result.transition.transitionCount += 1;