L2ItemInstance refinerItem = (L2ItemInstance) L2World.getInstance().findObject(_refinerItemObjId);
L2ItemInstance gemstoneItem = (L2ItemInstance) L2World.getInstance().findObject(_gemstoneItemObjId);
if (targetItem == null || refinerItem == null || gemstoneItem == null || targetItem.getOwnerId() != activeChar.getObjectId() || refinerItem.getOwnerId() != activeChar.getObjectId() || gemstoneItem.getOwnerId() != activeChar.getObjectId() || activeChar.getLevel() < 46) // must be lvl 46
{
activeChar.sendPacket(new ExVariationResult(0, 0, 0));
activeChar.sendPacket(new SystemMessage(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS));
return;
}
// unequip item
if (targetItem.isEquipped())
{
activeChar.disarmWeapons();
}
if (TryAugmentItem(activeChar, targetItem, refinerItem, gemstoneItem))
{
int stat12 = 0x0000FFFF & targetItem.getAugmentation().getAugmentationId();
int stat34 = targetItem.getAugmentation().getAugmentationId() >> 16;
activeChar.sendPacket(new ExVariationResult(stat12, stat34, 1));
activeChar.sendPacket(new SystemMessage(SystemMessageId.THE_ITEM_WAS_SUCCESSFULLY_AUGMENTED));
}
else
{
activeChar.sendPacket(new ExVariationResult(0, 0, 0));
activeChar.sendPacket(new SystemMessage(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS));
}
}