Fixing Junk functionality
This commit is contained in:
@@ -332,13 +332,15 @@ public class ItemProductionMsgHandler extends AbstractClientMsgHandler {
|
||||
|
||||
private static void junkItem(int itemUUID, NPC vendor, ClientConnection origin) {
|
||||
|
||||
MobLoot targetItem;
|
||||
Item targetItem;
|
||||
ManageNPCMsg outMsg;
|
||||
Dispatch dispatch;
|
||||
|
||||
if (origin.sellLock.tryLock()) {
|
||||
|
||||
try {
|
||||
targetItem = MobLoot.getFromCache(itemUUID);
|
||||
|
||||
targetItem = ForgeManager.inMemoryItemLookup.get(itemUUID);
|
||||
|
||||
PlayerCharacter player = origin.getPlayerCharacter();
|
||||
|
||||
@@ -350,18 +352,17 @@ public class ItemProductionMsgHandler extends AbstractClientMsgHandler {
|
||||
if (targetItem == null)
|
||||
return;
|
||||
|
||||
if (!ForgeManager.vendorItemLookup.get(vendor).contains(targetItem))
|
||||
return;
|
||||
|
||||
// Cannot junk items without a forge!
|
||||
|
||||
if (vendor.getBuilding() == null)
|
||||
return;
|
||||
|
||||
// Delete the item and cancel any pending rolling timer jobs
|
||||
// Delete the item
|
||||
|
||||
targetItem.recycle(vendor);
|
||||
// todo fix vendor.removeItemFromForge(targetItem);
|
||||
ForgeManager.inMemoryItemLookup.remove(targetItem.objectUUID);
|
||||
WorkOrder workOrder = ForgeManager.itemWorkOrderLookup.get(targetItem);
|
||||
workOrder.cooking.remove(targetItem);
|
||||
ForgeManager.vendorItemLookup.get(workOrder.vendor).remove(targetItem);
|
||||
|
||||
// Refresh vendor's inventory to client
|
||||
|
||||
|
||||
Reference in New Issue
Block a user