[8162] Fixed applying random enchantments to quest rewarded items. Author: ApoC

--HG--
branch : trunk
This commit is contained in:
megamage
2009-07-12 18:01:47 +08:00
parent 8a0427c70f
commit 721782b259
+6 -6
View File
@@ -12951,12 +12951,12 @@ void Player::RewardQuest( Quest const *pQuest, uint32 reward, Object* questGiver
if (pQuest->GetRewChoiceItemsCount() > 0) if (pQuest->GetRewChoiceItemsCount() > 0)
{ {
if (pQuest->RewChoiceItemId[reward]) if (uint32 itemId = pQuest->RewChoiceItemId[reward])
{ {
ItemPosCountVec dest; ItemPosCountVec dest;
if (CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, pQuest->RewChoiceItemId[reward], pQuest->RewChoiceItemCount[reward] ) == EQUIP_ERR_OK) if (CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, itemId, pQuest->RewChoiceItemCount[reward] ) == EQUIP_ERR_OK)
{ {
Item* item = StoreNewItem( dest, pQuest->RewChoiceItemId[reward], true); Item* item = StoreNewItem( dest, itemId, true, Item::GenerateItemRandomPropertyId(itemId));
SendNewItem(item, pQuest->RewChoiceItemCount[reward], true, false); SendNewItem(item, pQuest->RewChoiceItemCount[reward], true, false);
} }
} }
@@ -12966,12 +12966,12 @@ void Player::RewardQuest( Quest const *pQuest, uint32 reward, Object* questGiver
{ {
for (uint32 i=0; i < pQuest->GetRewItemsCount(); ++i) for (uint32 i=0; i < pQuest->GetRewItemsCount(); ++i)
{ {
if (pQuest->RewItemId[i]) if (uint32 itemId = pQuest->RewItemId[i])
{ {
ItemPosCountVec dest; ItemPosCountVec dest;
if (CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, pQuest->RewItemId[i], pQuest->RewItemCount[i] ) == EQUIP_ERR_OK) if (CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, itemId, pQuest->RewItemCount[i] ) == EQUIP_ERR_OK)
{ {
Item* item = StoreNewItem( dest, pQuest->RewItemId[i], true); Item* item = StoreNewItem( dest, itemId, true, Item::GenerateItemRandomPropertyId(itemId));
SendNewItem(item, pQuest->RewItemCount[i], true, false); SendNewItem(item, pQuest->RewItemCount[i], true, false);
} }
} }