Fixed ROF Augment item dupe with not checking for available slots properly and adding items to the virtual instance

This commit is contained in:
akkadius
2014-09-07 05:43:37 -05:00
parent 84310ec8f0
commit b392d16808
4 changed files with 18 additions and 4 deletions
+4 -4
View File
@@ -6307,12 +6307,12 @@ void Client::Handle_OP_AugmentItem(const EQApplicationPacket *app)
tobe_auged = user_inv.GetItem(slot_id);
auged_with = user_inv.GetItem(MainCursor);
if(tobe_auged && auged_with)
if (tobe_auged && auged_with)
{
if (((slot=tobe_auged->AvailableAugmentSlot(auged_with->GetAugmentType()))!=-1) &&
if (((tobe_auged->IsAugmentSlotAvailable(auged_with->GetAugmentType(), in_augment->augment_index)) != -1) &&
(tobe_auged->AvailableWearSlot(auged_with->GetItem()->Slots)))
{
tobe_auged->PutAugment(slot, *auged_with);
tobe_auged->PutAugment(in_augment->augment_index, *auged_with);
ItemInst *aug = tobe_auged->GetAugment(in_augment->augment_index);
if(aug) {
@@ -6325,7 +6325,7 @@ void Client::Handle_OP_AugmentItem(const EQApplicationPacket *app)
}
else
{
Message(13, "Error: Could not find augmentation at index %i. Aborting.");
Message(13, "Error: Could not find augmentation at index %i. Aborting.", in_augment->augment_index);
return;
}