Pass output object into various other inventroy actions
This commit is contained in:
parent
9fe739debb
commit
4232ba6db1
@ -48,29 +48,45 @@ export class InventoryCallbacks
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** Handle Remove event */
|
/** Handle Remove event */
|
||||||
public removeItem(pmcData: IPmcData, body: IInventoryRemoveRequestData, sessionID: string): IItemEventRouterResponse
|
public removeItem(
|
||||||
|
pmcData: IPmcData,
|
||||||
|
body: IInventoryRemoveRequestData,
|
||||||
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
return this.inventoryController.discardItem(pmcData, body, sessionID);
|
return this.inventoryController.discardItem(pmcData, body, sessionID, output);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Handle Split event */
|
/** Handle Split event */
|
||||||
public splitItem(pmcData: IPmcData, body: IInventorySplitRequestData, sessionID: string): IItemEventRouterResponse
|
public splitItem(
|
||||||
|
pmcData: IPmcData,
|
||||||
|
body: IInventorySplitRequestData,
|
||||||
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
return this.inventoryController.splitItem(pmcData, body, sessionID);
|
return this.inventoryController.splitItem(pmcData, body, sessionID, output);
|
||||||
}
|
}
|
||||||
|
|
||||||
public mergeItem(pmcData: IPmcData, body: IInventoryMergeRequestData, sessionID: string): IItemEventRouterResponse
|
public mergeItem(
|
||||||
|
pmcData: IPmcData,
|
||||||
|
body: IInventoryMergeRequestData,
|
||||||
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
return this.inventoryController.mergeItem(pmcData, body, sessionID);
|
return this.inventoryController.mergeItem(pmcData, body, sessionID, output);
|
||||||
}
|
}
|
||||||
|
|
||||||
public transferItem(
|
public transferItem(
|
||||||
pmcData: IPmcData,
|
pmcData: IPmcData,
|
||||||
body: IInventoryTransferRequestData,
|
body: IInventoryTransferRequestData,
|
||||||
sessionID: string,
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
): IItemEventRouterResponse
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
return this.inventoryController.transferItem(pmcData, body, sessionID);
|
return this.inventoryController.transferItem(pmcData, body, sessionID, output);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Handle Swap */
|
/** Handle Swap */
|
||||||
@ -109,9 +125,10 @@ export class InventoryCallbacks
|
|||||||
pmcData: IPmcData,
|
pmcData: IPmcData,
|
||||||
body: IInventoryExamineRequestData,
|
body: IInventoryExamineRequestData,
|
||||||
sessionID: string,
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
): IItemEventRouterResponse
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
return this.inventoryController.examineItem(pmcData, body, sessionID);
|
return this.inventoryController.examineItem(pmcData, body, sessionID, output);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Handle ReadEncyclopedia */
|
/** Handle ReadEncyclopedia */
|
||||||
|
@ -171,10 +171,9 @@ export class InventoryController
|
|||||||
pmcData: IPmcData,
|
pmcData: IPmcData,
|
||||||
body: IInventoryRemoveRequestData,
|
body: IInventoryRemoveRequestData,
|
||||||
sessionID: string,
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
): IItemEventRouterResponse
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
const output = this.eventOutputHolder.getOutput(sessionID);
|
|
||||||
|
|
||||||
if (body.fromOwner?.type === "Mail")
|
if (body.fromOwner?.type === "Mail")
|
||||||
{
|
{
|
||||||
this.inventoryHelper.removeItemAndChildrenFromMailRewards(sessionID, body, output);
|
this.inventoryHelper.removeItemAndChildrenFromMailRewards(sessionID, body, output);
|
||||||
@ -201,10 +200,9 @@ export class InventoryController
|
|||||||
pmcData: IPmcData,
|
pmcData: IPmcData,
|
||||||
request: IInventorySplitRequestData,
|
request: IInventorySplitRequestData,
|
||||||
sessionID: string,
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
): IItemEventRouterResponse
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
const output = this.eventOutputHolder.getOutput(sessionID);
|
|
||||||
|
|
||||||
// Changes made to result apply to character inventory
|
// Changes made to result apply to character inventory
|
||||||
const inventoryItems = this.inventoryHelper.getOwnerInventoryItems(request, sessionID);
|
const inventoryItems = this.inventoryHelper.getOwnerInventoryItems(request, sessionID);
|
||||||
|
|
||||||
@ -260,10 +258,13 @@ export class InventoryController
|
|||||||
* @param sessionID Player id
|
* @param sessionID Player id
|
||||||
* @returns IItemEventRouterResponse
|
* @returns IItemEventRouterResponse
|
||||||
*/
|
*/
|
||||||
public mergeItem(pmcData: IPmcData, body: IInventoryMergeRequestData, sessionID: string): IItemEventRouterResponse
|
public mergeItem(
|
||||||
|
pmcData: IPmcData,
|
||||||
|
body: IInventoryMergeRequestData,
|
||||||
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
const output = this.eventOutputHolder.getOutput(sessionID);
|
|
||||||
|
|
||||||
// Changes made to result apply to character inventory
|
// Changes made to result apply to character inventory
|
||||||
const inventoryItems = this.inventoryHelper.getOwnerInventoryItems(body, sessionID);
|
const inventoryItems = this.inventoryHelper.getOwnerInventoryItems(body, sessionID);
|
||||||
|
|
||||||
@ -339,10 +340,9 @@ export class InventoryController
|
|||||||
pmcData: IPmcData,
|
pmcData: IPmcData,
|
||||||
body: IInventoryTransferRequestData,
|
body: IInventoryTransferRequestData,
|
||||||
sessionID: string,
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
): IItemEventRouterResponse
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
const output = this.eventOutputHolder.getOutput(sessionID);
|
|
||||||
|
|
||||||
let sourceItem: Item = null;
|
let sourceItem: Item = null;
|
||||||
let destinationItem: Item = null;
|
let destinationItem: Item = null;
|
||||||
for (const iterItem of pmcData.Inventory.items)
|
for (const iterItem of pmcData.Inventory.items)
|
||||||
@ -618,6 +618,7 @@ export class InventoryController
|
|||||||
pmcData: IPmcData,
|
pmcData: IPmcData,
|
||||||
body: IInventoryExamineRequestData,
|
body: IInventoryExamineRequestData,
|
||||||
sessionID: string,
|
sessionID: string,
|
||||||
|
output: IItemEventRouterResponse,
|
||||||
): IItemEventRouterResponse
|
): IItemEventRouterResponse
|
||||||
{
|
{
|
||||||
let itemId = "";
|
let itemId = "";
|
||||||
@ -667,7 +668,7 @@ export class InventoryController
|
|||||||
this.flagItemsAsInspectedAndRewardXp([itemId], pmcData);
|
this.flagItemsAsInspectedAndRewardXp([itemId], pmcData);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.eventOutputHolder.getOutput(sessionID);
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected flagItemsAsInspectedAndRewardXp(itemTpls: string[], pmcProfile: IPmcData): void
|
protected flagItemsAsInspectedAndRewardXp(itemTpls: string[], pmcProfile: IPmcData): void
|
||||||
|
@ -59,13 +59,13 @@ export class InventoryItemEventRouter extends ItemEventRouterDefinition
|
|||||||
case ItemEventActions.MOVE:
|
case ItemEventActions.MOVE:
|
||||||
return this.inventoryCallbacks.moveItem(pmcData, body, sessionID, output);
|
return this.inventoryCallbacks.moveItem(pmcData, body, sessionID, output);
|
||||||
case ItemEventActions.REMOVE:
|
case ItemEventActions.REMOVE:
|
||||||
return this.inventoryCallbacks.removeItem(pmcData, body, sessionID);
|
return this.inventoryCallbacks.removeItem(pmcData, body, sessionID, output);
|
||||||
case ItemEventActions.SPLIT:
|
case ItemEventActions.SPLIT:
|
||||||
return this.inventoryCallbacks.splitItem(pmcData, body, sessionID);
|
return this.inventoryCallbacks.splitItem(pmcData, body, sessionID, output);
|
||||||
case ItemEventActions.MERGE:
|
case ItemEventActions.MERGE:
|
||||||
return this.inventoryCallbacks.mergeItem(pmcData, body, sessionID);
|
return this.inventoryCallbacks.mergeItem(pmcData, body, sessionID, output);
|
||||||
case ItemEventActions.TRANSFER:
|
case ItemEventActions.TRANSFER:
|
||||||
return this.inventoryCallbacks.transferItem(pmcData, body, sessionID);
|
return this.inventoryCallbacks.transferItem(pmcData, body, sessionID, output);
|
||||||
case ItemEventActions.SWAP:
|
case ItemEventActions.SWAP:
|
||||||
return this.inventoryCallbacks.swapItem(pmcData, body, sessionID);
|
return this.inventoryCallbacks.swapItem(pmcData, body, sessionID);
|
||||||
case ItemEventActions.FOLD:
|
case ItemEventActions.FOLD:
|
||||||
@ -79,7 +79,7 @@ export class InventoryItemEventRouter extends ItemEventRouterDefinition
|
|||||||
case ItemEventActions.UNBIND:
|
case ItemEventActions.UNBIND:
|
||||||
return this.inventoryCallbacks.unbindItem(pmcData, body, sessionID);
|
return this.inventoryCallbacks.unbindItem(pmcData, body, sessionID);
|
||||||
case ItemEventActions.EXAMINE:
|
case ItemEventActions.EXAMINE:
|
||||||
return this.inventoryCallbacks.examineItem(pmcData, body, sessionID);
|
return this.inventoryCallbacks.examineItem(pmcData, body, sessionID, output);
|
||||||
case ItemEventActions.READ_ENCYCLOPEDIA:
|
case ItemEventActions.READ_ENCYCLOPEDIA:
|
||||||
return this.inventoryCallbacks.readEncyclopedia(pmcData, body, sessionID);
|
return this.inventoryCallbacks.readEncyclopedia(pmcData, body, sessionID);
|
||||||
case ItemEventActions.APPLY_INVENTORY_CHANGES:
|
case ItemEventActions.APPLY_INVENTORY_CHANGES:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user