Merge pull request #613 from DrakiaXYZ/fix-hideoutexamine
Fix examining item in hideout upgrade panel exception
This commit is contained in:
@@ -509,7 +509,7 @@ public class InventoryController(
|
||||
return presetHelper.GetBaseItemTpl(request.ItemId);
|
||||
}
|
||||
|
||||
if (request.FromOwner.Id == Traders.FENCE)
|
||||
if (Traders.FENCE.Equals(request.FromOwner.Id))
|
||||
// Get tpl from fence assorts
|
||||
{
|
||||
return fenceService.GetRawFenceAssorts().Items.FirstOrDefault(x => x.Id == request.ItemId)?.Template;
|
||||
@@ -519,10 +519,7 @@ public class InventoryController(
|
||||
// Not fence
|
||||
// get tpl from trader assort
|
||||
{
|
||||
return databaseService
|
||||
.GetTrader(request.FromOwner.Id.Value)
|
||||
.Assort.Items.FirstOrDefault(item => item.Id == request.ItemId)
|
||||
?.Template;
|
||||
return databaseService.GetTrader(request.FromOwner.Id).Assort.Items.FirstOrDefault(item => item.Id == request.ItemId)?.Template;
|
||||
}
|
||||
|
||||
if (request.FromOwner.Type == "RagFair")
|
||||
@@ -536,7 +533,7 @@ public class InventoryController(
|
||||
|
||||
// Try alternate way of getting offer if first approach fails
|
||||
var offer =
|
||||
ragfairOfferService.GetOfferByOfferId(request.ItemId) ?? ragfairOfferService.GetOfferByOfferId(request.FromOwner.Id.Value);
|
||||
ragfairOfferService.GetOfferByOfferId(request.ItemId) ?? ragfairOfferService.GetOfferByOfferId(request.FromOwner.Id);
|
||||
|
||||
// Try find examine item inside offer items array
|
||||
var matchingItem = offer.Items.FirstOrDefault(offerItem => offerItem.Id == request.ItemId);
|
||||
@@ -555,6 +552,12 @@ public class InventoryController(
|
||||
return request.ItemId;
|
||||
}
|
||||
|
||||
// Hideout upgrade
|
||||
if (request.FromOwner.Type == "HideoutUpgrade")
|
||||
{
|
||||
return request.ItemId;
|
||||
}
|
||||
|
||||
if (request.FromOwner.Type == "Mail")
|
||||
{
|
||||
// when inspecting an item in mail rewards, we are given on the message its in and its mongoId, not the Template, so we have to go find it ourselves
|
||||
|
||||
@@ -860,7 +860,7 @@ public class InventoryHelper(
|
||||
else if (string.Equals(request.FromOwner.Type, "mail", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
// Split requests don't use 'use' but 'splitItem' property
|
||||
fromInventoryItems = dialogueHelper.GetMessageItemContents(request.FromOwner.Id.Value, sessionId, itemId);
|
||||
fromInventoryItems = dialogueHelper.GetMessageItemContents(request.FromOwner.Id, sessionId, itemId);
|
||||
fromType = "mail";
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -18,7 +18,7 @@ public record BaseInteractionRequestData
|
||||
public record OwnerInfo
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public MongoId? Id { get; set; }
|
||||
public string? Id { get; set; }
|
||||
|
||||
[JsonPropertyName("type")]
|
||||
public string? Type { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user