예제 #1
0
  public static void breakWeapons(Player player, int weaponToBreakUniqueId) {
    Item weaponToBreak = player.getInventory().getItemByObjId(weaponToBreakUniqueId);
    if (weaponToBreak == null)
      weaponToBreak = player.getEquipment().getEquippedItemByObjId(weaponToBreakUniqueId);

    if (weaponToBreak == null || !(player.getTarget() instanceof Npc)) return;

    if (!weaponToBreak.hasFusionedItem()) {
      PacketSendUtility.sendPacket(
          player, SM_SYSTEM_MESSAGE.STR_DECOMPOUND_ERROR_NOT_AVAILABLE(weaponToBreak.getNameID()));
      return;
    }

    weaponToBreak.setFusionedItem(0);
    ItemService.removeAllFusionStone(player, weaponToBreak);
    DAOManager.getDAO(InventoryDAO.class).store(weaponToBreak, player.getObjectId());

    PacketSendUtility.sendPacket(player, new SM_UPDATE_ITEM(weaponToBreak));

    PacketSendUtility.sendPacket(
        player,
        SM_SYSTEM_MESSAGE.STR_COMPOUNDED_ITEM_DECOMPOUND_SUCCESS(weaponToBreak.getNameID()));
  }