forked from MagicBane/Server
Complete is complete
This commit is contained in:
@@ -46,7 +46,7 @@ public class ItemProductionMsgHandler extends AbstractClientMsgHandler {
|
||||
// Member variable declaration
|
||||
|
||||
PlayerCharacter player;
|
||||
NPC vendorNPC;
|
||||
NPC vendor;
|
||||
ItemProductionMsg msg;
|
||||
Dispatch dispatch;
|
||||
|
||||
@@ -60,11 +60,11 @@ public class ItemProductionMsgHandler extends AbstractClientMsgHandler {
|
||||
|
||||
// Grab reference to vendor we are interacting with
|
||||
|
||||
vendorNPC = (NPC) DbManager.getObject(mbEnums.GameObjectType.NPC, msg.npcUUID);
|
||||
vendor = (NPC) DbManager.getObject(mbEnums.GameObjectType.NPC, msg.npcUUID);
|
||||
|
||||
// Oops?
|
||||
|
||||
if (vendorNPC == null)
|
||||
if (vendor == null)
|
||||
return true;
|
||||
|
||||
// Process Request
|
||||
@@ -77,7 +77,7 @@ public class ItemProductionMsgHandler extends AbstractClientMsgHandler {
|
||||
|
||||
WorkOrder workOrder = new WorkOrder();
|
||||
workOrder.total_to_produce = msg.total_to_produce;
|
||||
workOrder.vendor = vendorNPC;
|
||||
workOrder.vendor = vendor;
|
||||
workOrder.templateID = msg.itemUUID;
|
||||
workOrder.prefixToken = msg.pToken;
|
||||
workOrder.suffixToken = msg.sToken;
|
||||
@@ -98,25 +98,42 @@ public class ItemProductionMsgHandler extends AbstractClientMsgHandler {
|
||||
|
||||
break;
|
||||
case JUNK:
|
||||
junkItem(msg.itemUUID, vendorNPC, origin);
|
||||
junkItem(msg.itemUUID, vendor, origin);
|
||||
break;
|
||||
case RECYCLE:
|
||||
recycleItem(msg.items, vendorNPC, origin);
|
||||
recycleItem(msg.items, vendor, origin);
|
||||
msg.actionType = mbEnums.ProductionActionType.TAKE;
|
||||
dispatch = Dispatch.borrow(player, msg);
|
||||
DispatchMessage.dispatchMsgDispatch(dispatch, mbEnums.DispatchChannel.SECONDARY);
|
||||
break;
|
||||
case COMPLETE:
|
||||
// todo fix vendorNPC.completeItem(msg.itemUUID);
|
||||
Item virtualItem = ForgeManager.inMemoryItemLookup.get(msg.itemUUID);
|
||||
|
||||
if (virtualItem == null)
|
||||
return true;
|
||||
|
||||
//remove from client forge window
|
||||
|
||||
ItemProductionMsg outMsg1 = new ItemProductionMsg(vendor.building, vendor, virtualItem, mbEnums.ProductionActionType.SETPRICE, true);
|
||||
DispatchMessage.dispatchMsgToInterestArea(vendor, outMsg1, mbEnums.DispatchChannel.SECONDARY, 700, false, false);
|
||||
ItemProductionMsg outMsg = new ItemProductionMsg(vendor.building, vendor, virtualItem, mbEnums.ProductionActionType.CONFIRM_DEPOSIT, true);
|
||||
DispatchMessage.dispatchMsgToInterestArea(vendor, outMsg, mbEnums.DispatchChannel.SECONDARY, 700, false, false);
|
||||
|
||||
Item completedItem = DbManager.ItemQueries.PERSIST(virtualItem);
|
||||
vendor.charItemManager.addItemToInventory(completedItem);
|
||||
|
||||
ForgeManager.inMemoryItemLookup.remove(virtualItem.objectUUID);
|
||||
ForgeManager.vendorItemLookup.get(vendor).remove(virtualItem);
|
||||
ForgeManager.itemWorkOrderLookup.remove(virtualItem);
|
||||
break;
|
||||
case DEPOSIT:
|
||||
depositItem(msg.itemUUID, vendorNPC, origin);
|
||||
depositItem(msg.itemUUID, vendor, origin);
|
||||
break;
|
||||
case SETPRICE:
|
||||
setItemPrice(msg.itemType, msg.itemUUID, msg.itemPrice, vendorNPC, origin);
|
||||
setItemPrice(msg.itemType, msg.itemUUID, msg.itemPrice, vendor, origin);
|
||||
break;
|
||||
case TAKE:
|
||||
takeItem(msg.items, vendorNPC, origin);
|
||||
takeItem(msg.items, vendor, origin);
|
||||
dispatch = Dispatch.borrow(player, msg);
|
||||
DispatchMessage.dispatchMsgDispatch(dispatch, mbEnums.DispatchChannel.SECONDARY);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user