diff --git a/src/ship/items/inventory.rs b/src/ship/items/inventory.rs index 35cef9f..67bb356 100644 --- a/src/ship/items/inventory.rs +++ b/src/ship/items/inventory.rs @@ -82,6 +82,11 @@ pub enum InventoryItemAddToError { ExceedsCapacity, } +#[derive(Error, Debug, Clone)] +#[error("")] +pub enum InventoryAddError { +} + impl InventoryItem { pub fn entity_ids(&self) -> Vec { match self { @@ -511,7 +516,7 @@ impl CharacterInventory { .nth(0) } - pub fn add_item(&mut self, item: InventoryItem) -> Result<(), ()> { // TODO: errors + pub fn add_item(&mut self, item: InventoryItem) -> Result<(), InventoryAddError> { // TODO: errors // TODO: check slot conflict? self.items.push(item); Ok(()) diff --git a/src/ship/items/manager.rs b/src/ship/items/manager.rs index ff554ea..bfdcca6 100644 --- a/src/ship/items/manager.rs +++ b/src/ship/items/manager.rs @@ -917,7 +917,7 @@ impl ItemManager { entity_id: entity_id, item_id: item_id, item: ItemDetail::Weapon(weapon.clone()), - })); + }))?; entity_gateway.set_character_inventory(&character.id, &inventory.as_inventory_entity(&character.id)).await?;