Handlers created for bank interaction
This commit is contained in:
@@ -156,37 +156,7 @@ public class ClientMessagePump implements NetMsgHandler {
|
||||
DispatchMessage.dispatchMsgToInterestArea(pc, msg, DispatchChannel.PRIMARY, MBServerStatics.CHARACTER_LOAD_RANGE, true, true);
|
||||
}
|
||||
|
||||
public static Boolean NPCVaultBankRangeCheck(PlayerCharacter pc, ClientConnection origin, String bankorvault) {
|
||||
|
||||
if (pc == null)
|
||||
return false;
|
||||
|
||||
NPC npc = pc.getLastNPCDialog();
|
||||
|
||||
if (npc == null)
|
||||
return false;
|
||||
|
||||
// System.out.println(npc.getContract().getName());
|
||||
// last npc must be either a banker or vault keeper
|
||||
|
||||
if (bankorvault.equals("vault")) {
|
||||
if (npc.getContract().getContractID() != 861)
|
||||
return false;
|
||||
} else
|
||||
// assuming banker
|
||||
|
||||
if (!npc.getContract().getName().equals("Bursar"))
|
||||
return false;
|
||||
|
||||
if (pc.getLoc().distanceSquared2D(npc.getLoc()) > MBServerStatics.NPC_TALK_RANGE * MBServerStatics.NPC_TALK_RANGE) {
|
||||
ErrorPopupMsg.sendErrorPopup(pc, 14);
|
||||
return false;
|
||||
} else
|
||||
return true;
|
||||
|
||||
}
|
||||
|
||||
private static void transferItemFromInventoryToBank(TransferItemFromInventoryToBankMsg msg, ClientConnection origin) {
|
||||
private static void transferItemFromBankToInventory(TransferItemFromBankMsg msg, ClientConnection origin) {
|
||||
|
||||
PlayerCharacter player = origin.getPlayerCharacter();
|
||||
Dispatch dispatch;
|
||||
@@ -194,64 +164,7 @@ public class ClientMessagePump implements NetMsgHandler {
|
||||
if (player == null)
|
||||
return;
|
||||
|
||||
if (!NPCVaultBankRangeCheck(player, origin, "bank"))
|
||||
return;
|
||||
|
||||
CharacterItemManager itemManager = player.charItemManager;
|
||||
|
||||
if (itemManager == null)
|
||||
return;
|
||||
|
||||
if (itemManager.getBankWeight() > 500) {
|
||||
ErrorPopupMsg.sendErrorPopup(player, 21);
|
||||
return;
|
||||
}
|
||||
|
||||
int uuid = msg.getUUID();
|
||||
|
||||
Item item = itemManager.getItemByUUID(uuid);
|
||||
|
||||
if (item == null)
|
||||
return;
|
||||
|
||||
//dupe check WTF CHECK BUT NO LOGGING?
|
||||
|
||||
if (!item.validForInventory(origin, player, itemManager))
|
||||
return;
|
||||
|
||||
if (item.containerType == ItemContainerType.INVENTORY && itemManager.isBankOpen())
|
||||
if (item.template.item_type.equals(engine.Enum.ItemType.GOLD)) {
|
||||
if (!itemManager.moveGoldToBank(item, msg.getNumItems()))
|
||||
return;
|
||||
UpdateGoldMsg goldMes = new UpdateGoldMsg(player);
|
||||
goldMes.configure();
|
||||
|
||||
dispatch = Dispatch.borrow(player, goldMes);
|
||||
DispatchMessage.dispatchMsgDispatch(dispatch, DispatchChannel.SECONDARY);
|
||||
|
||||
} else {
|
||||
|
||||
if (!itemManager.hasRoomBank(item.template.item_wt))
|
||||
return;
|
||||
|
||||
if (!itemManager.moveItemToBank(item))
|
||||
return;
|
||||
|
||||
dispatch = Dispatch.borrow(player, msg);
|
||||
DispatchMessage.dispatchMsgDispatch(dispatch, DispatchChannel.SECONDARY);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private static void transferItemFromBankToInventory(TransferItemFromBankToInventoryMsg msg, ClientConnection origin) {
|
||||
|
||||
PlayerCharacter player = origin.getPlayerCharacter();
|
||||
Dispatch dispatch;
|
||||
|
||||
if (player == null)
|
||||
return;
|
||||
|
||||
if (!NPCVaultBankRangeCheck(player, origin, "bank"))
|
||||
if (!NPCManager.NPCVaultBankRangeCheck(player, origin, "bank"))
|
||||
return;
|
||||
|
||||
CharacterItemManager itemManager = player.charItemManager;
|
||||
@@ -1320,11 +1233,8 @@ public class ClientMessagePump implements NetMsgHandler {
|
||||
case SHOWCOMBATINFO:
|
||||
show((ShowMsg) msg, origin);
|
||||
break;
|
||||
case TRANSFERITEMTOBANK:
|
||||
transferItemFromInventoryToBank((TransferItemFromInventoryToBankMsg) msg, origin);
|
||||
break;
|
||||
case TRANSFERITEMFROMBANK:
|
||||
transferItemFromBankToInventory((TransferItemFromBankToInventoryMsg) msg, origin);
|
||||
transferItemFromBankToInventory((TransferItemFromBankMsg) msg, origin);
|
||||
break;
|
||||
case TRANSFERITEMFROMVAULTTOINVENTORY:
|
||||
transferItemFromVaultToInventory((TransferItemFromVaultToInventoryMsg) msg, origin);
|
||||
|
||||
Reference in New Issue
Block a user