Pick up thrown items
This commit is contained in:
@@ -305,12 +305,15 @@ public partial class Game : Node3D, IGame
|
||||
DropRestorative(defeatedLocation);
|
||||
}
|
||||
|
||||
public InventoryItem RerollItem(InventoryItem itemToReroll)
|
||||
public InventoryItem RerollItem(InventoryItem itemToReroll, bool insertIntoInventory = true)
|
||||
{
|
||||
var itemDb = new ItemDatabase();
|
||||
|
||||
var currentIndex = Player.Inventory.Items.IndexOf(itemToReroll);
|
||||
Player.Inventory.Remove(itemToReroll);
|
||||
|
||||
if (insertIntoInventory)
|
||||
Player.Inventory.Remove(itemToReroll);
|
||||
|
||||
InventoryItem rolledItem = null;
|
||||
|
||||
if (itemToReroll is Weapon weapon)
|
||||
@@ -326,7 +329,8 @@ public partial class Game : Node3D, IGame
|
||||
if (itemToReroll is ConsumableItem consumableItem)
|
||||
rolledItem = itemDb.PickItem(consumableItem);
|
||||
|
||||
Player.Inventory.TryInsert(rolledItem, currentIndex);
|
||||
if (insertIntoInventory)
|
||||
Player.Inventory.TryInsert(rolledItem, currentIndex);
|
||||
|
||||
return rolledItem;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user