diff --git a/src/Controllers/Common/ContentController.cs b/src/Controllers/Common/ContentController.cs index 2bd7ebf..137dc8e 100644 --- a/src/Controllers/Common/ContentController.cs +++ b/src/Controllers/Common/ContentController.cs @@ -388,7 +388,20 @@ public class ContentController : Controller { ctx.Images.Add(image); ctx.SaveChanges(); - // TODO: handle CommonInventoryRequests here too + if (raisedPetRequest.CommonInventoryRequests is not null) { + foreach (var req in raisedPetRequest.CommonInventoryRequests) { + InventoryItem? item = viking.Inventory.InventoryItems.FirstOrDefault(e => e.ItemId == req.ItemID); + + //Does the item exist in the user's inventory? + if (item is null) continue; //If not, skip it. + + if (item.Quantity + req.Quantity >= 0 ) { //If so, can we update it appropriately? + //We can. Do so. + item.Quantity += req.Quantity; //Note that we use += here because req.Quantity is negative. + ctx.SaveChanges(); + } + } + } return Ok(new CreatePetResponse { RaisedPetData = GetRaisedPetDataFromDragon(dragon)