TRADING YEAH LETS GO #80
@ -539,7 +539,7 @@ impl ItemManager {
|
|||||||
let inventory = self.character_inventory.get_mut(&character.id).ok_or(ItemManagerError::NoCharacter(character.id))?;
|
let inventory = self.character_inventory.get_mut(&character.id).ok_or(ItemManagerError::NoCharacter(character.id))?;
|
||||||
let used_item = inventory.get_item_handle_by_id(item_id).ok_or(ItemManagerError::NoSuchItemId(item_id))?;
|
let used_item = inventory.get_item_handle_by_id(item_id).ok_or(ItemManagerError::NoSuchItemId(item_id))?;
|
||||||
let consumed_item = used_item.consume(amount)?;
|
let consumed_item = used_item.consume(amount)?;
|
||||||
|
|
||||||
if let ItemDetail::TechniqueDisk(tech_disk) = consumed_item.item() {
|
if let ItemDetail::TechniqueDisk(tech_disk) = consumed_item.item() {
|
||||||
// TODO: validate tech level in packet is in bounds [1..30]
|
// TODO: validate tech level in packet is in bounds [1..30]
|
||||||
character.techs.set_tech(tech_disk.tech, TechLevel(tech_disk.level as u8));
|
character.techs.set_tech(tech_disk.tech, TechLevel(tech_disk.level as u8));
|
||||||
|
@ -47,8 +47,7 @@ where
|
|||||||
})
|
})
|
||||||
.next()
|
.next()
|
||||||
.ok_or(TradeError::CouldNotFindTradePartner)?;
|
.ok_or(TradeError::CouldNotFindTradePartner)?;
|
||||||
|
|
||||||
|
|
||||||
let item_blobs = items_to_trade.items.iter().take(items_to_trade.count as usize);
|
let item_blobs = items_to_trade.items.iter().take(items_to_trade.count as usize);
|
||||||
let trade_items = item_blobs
|
let trade_items = item_blobs
|
||||||
.map(|item| {
|
.map(|item| {
|
||||||
@ -117,7 +116,7 @@ where
|
|||||||
.map(|trade_partner| {
|
.map(|trade_partner| {
|
||||||
(trade_partner.client, SendShipPacket::CancelTrade(CancelTrade {}))
|
(trade_partner.client, SendShipPacket::CancelTrade(CancelTrade {}))
|
||||||
});
|
});
|
||||||
|
|
||||||
log::warn!("error in trading: {:?}", err);
|
log::warn!("error in trading: {:?}", err);
|
||||||
Ok(Box::new(vec![(id, SendShipPacket::CancelTrade(CancelTrade {}))]
|
Ok(Box::new(vec![(id, SendShipPacket::CancelTrade(CancelTrade {}))]
|
||||||
.into_iter()
|
.into_iter()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user