From: <wel...@us...> - 2008-12-13 19:03:31
|
Revision: 2682 http://planeshift.svn.sourceforge.net/planeshift/?rev=2682&view=rev Author: weltall2 Date: 2008-12-13 19:03:29 +0000 (Sat, 13 Dec 2008) Log Message: ----------- Committed a patch for FS#2397 - TRANSIENT - crafting transformations shouldn't schedule removal events patch by peeg Modified Paths: -------------- trunk/src/server/workmanager.cpp trunk/src/server/workmanager.h Modified: trunk/src/server/workmanager.cpp =================================================================== --- trunk/src/server/workmanager.cpp 2008-12-13 18:50:30 UTC (rev 2681) +++ trunk/src/server/workmanager.cpp 2008-12-13 19:03:29 UTC (rev 2682) @@ -2998,7 +2998,7 @@ } ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -// Transform all items in equipment into a new item +// Transforms the targeted item into a new item psItem* psWorkManager::TransformTargetItem(psItem* oldItem, uint32 newId, int newQty, float itemQuality) { if (!oldItem) @@ -3033,7 +3033,7 @@ return NULL; // Create item - psItem* newItem = CreateTradeItem(newId, newQty, itemQuality); + psItem* newItem = CreateTradeItem(newId, newQty, itemQuality, true); if(!newItem) { Error2("CreateTradeItem() could not create new item ID #%u", newId); @@ -3073,7 +3073,7 @@ ///////////////////////////////////////////////////////////////////////////////////////////////////////////// // Create the new item and return newly created item pointer // The location and saving of item is up to calling routine -psItem* psWorkManager::CreateTradeItem(uint32 newId, int newQty, float itemQuality) +psItem* psWorkManager::CreateTradeItem(uint32 newId, int newQty, float itemQuality, bool transient) { Debug3( LOG_TRADE, 0,"Creating new item id(%u) quantity(%d)\n", newId, newQty ); @@ -3094,7 +3094,7 @@ } // Make a perminent new item - psItem* newItem = baseStats->InstantiateBasicItem( true ); + psItem* newItem = baseStats->InstantiateBasicItem( transient ); if (!newItem) { Error3("CreateTradeItem() could not create item (%s) id #%u", Modified: trunk/src/server/workmanager.h =================================================================== --- trunk/src/server/workmanager.h 2008-12-13 18:50:30 UTC (rev 2681) +++ trunk/src/server/workmanager.h 2008-12-13 19:03:29 UTC (rev 2682) @@ -423,7 +423,7 @@ bool ValidateMind(); bool ValidateStamina(Client* client); bool IsOnHand(uint32 equipId); - psItem* CreateTradeItem(uint32 newId, int newQty, float itemQuality); + psItem* CreateTradeItem(uint32 newId, int newQty, float itemQuality, bool transient = false); bool ValidateTraining(psTradeTransformations* transCandidate, psTradeProcesses* processCandidate); bool ValidateSkills(psTradeTransformations* transCandidate, psTradeProcesses* processCandidate); bool ValidateNotOverSkilled(psTradeTransformations* transCandidate, psTradeProcesses* processCandidate); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |