mirror of
https://github.com/1dot13/source.git
synced 2026-09-16 14:47:17 +02:00
Fixed a bug in the "sell all" strategic inventory screen options. Money now gets sold without modification and unreachable items can't accidentally be sold.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@2039 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
+4
-4
@@ -13,12 +13,12 @@
|
|||||||
#ifdef JA2EDITOR
|
#ifdef JA2EDITOR
|
||||||
|
|
||||||
//MAP EDITOR BUILD VERSION
|
//MAP EDITOR BUILD VERSION
|
||||||
CHAR16 zVersionLabel[256] = { L"Map Editor v1.13.2037" };
|
CHAR16 zVersionLabel[256] = { L"Map Editor v1.13.2039" };
|
||||||
|
|
||||||
#elif defined JA2BETAVERSION
|
#elif defined JA2BETAVERSION
|
||||||
|
|
||||||
//BETA/TEST BUILD VERSION
|
//BETA/TEST BUILD VERSION
|
||||||
CHAR16 zVersionLabel[256] = { L"Debug v1.13.2037" };
|
CHAR16 zVersionLabel[256] = { L"Debug v1.13.2039" };
|
||||||
|
|
||||||
#elif defined CRIPPLED_VERSION
|
#elif defined CRIPPLED_VERSION
|
||||||
|
|
||||||
@@ -28,11 +28,11 @@ CHAR16 zVersionLabel[256] = { L"Beta v. 0.98" };
|
|||||||
#else
|
#else
|
||||||
|
|
||||||
//RELEASE BUILD VERSION
|
//RELEASE BUILD VERSION
|
||||||
CHAR16 zVersionLabel[256] = { L"Release v1.13.2037" };
|
CHAR16 zVersionLabel[256] = { L"Release v1.13.2039" };
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
CHAR8 czVersionNumber[16] = { "Build 08.04.16" }; //YY.MM.DD
|
CHAR8 czVersionNumber[16] = { "Build 08.04.17" }; //YY.MM.DD
|
||||||
CHAR16 zTrackingNumber[16] = { L"Z" };
|
CHAR16 zTrackingNumber[16] = { L"Z" };
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -2309,6 +2309,15 @@ INT32 SellItem( OBJECTTYPE& object, BOOLEAN useModifier )
|
|||||||
iPrice += (INT32)( itemPrice * (float) object[bLoop]->data.ubShotsLeft / magSize );
|
iPrice += (INT32)( itemPrice * (float) object[bLoop]->data.ubShotsLeft / magSize );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//CHRISL: If we're dealing with money, we want to use the money's amount and just return that value with no modification
|
||||||
|
else if(Item[usItemType].usItemClass == IC_MONEY)
|
||||||
|
{
|
||||||
|
for (INT8 bLoop = 0; bLoop < object.ubNumberOfObjects; bLoop++)
|
||||||
|
{
|
||||||
|
iPrice += (INT32)(object[bLoop]->data.money.uiMoneyAmount);
|
||||||
|
}
|
||||||
|
return iPrice;
|
||||||
|
}
|
||||||
else if(Item[usItemType].usItemClass == IC_LBEGEAR && UsingNewInventorySystem() == true)
|
else if(Item[usItemType].usItemClass == IC_LBEGEAR && UsingNewInventorySystem() == true)
|
||||||
{
|
{
|
||||||
//CHRISL: If we're selling an LBE Item, we need to verify if it's an LBENODE, first. If it is, we need to sell
|
//CHRISL: If we're selling an LBE Item, we need to verify if it's an LBENODE, first. If it is, we need to sell
|
||||||
|
|||||||
+18
-15
@@ -1075,23 +1075,26 @@ void BeginSellAllCallBack( UINT8 bExitValue )
|
|||||||
}
|
}
|
||||||
for(UINT32 wItem = 0; wItem < guiNumWorldItems; wItem++)
|
for(UINT32 wItem = 0; wItem < guiNumWorldItems; wItem++)
|
||||||
{
|
{
|
||||||
if(0 == pInventoryPoolList[wItem].object.MoveThisObjectTo(gItemPointer,-1,0,NUM_INV_SLOTS,MAX_OBJECTS_PER_SLOT))
|
if(pInventoryPoolList[wItem].object.exists() == true && (pInventoryPoolList[wItem].usFlags & WORLD_ITEM_REACHABLE))
|
||||||
{
|
{
|
||||||
if (pInventoryPoolList[wItem].object.exists() == false) {
|
if(0 == pInventoryPoolList[wItem].object.MoveThisObjectTo(gItemPointer,-1,0,NUM_INV_SLOTS,MAX_OBJECTS_PER_SLOT))
|
||||||
pInventoryPoolList[wItem].object.initialize();
|
{
|
||||||
|
if (pInventoryPoolList[wItem].object.exists() == false) {
|
||||||
|
pInventoryPoolList[wItem].object.initialize();
|
||||||
|
}
|
||||||
|
// Dirty interface
|
||||||
|
fMapPanelDirty = TRUE;
|
||||||
|
gpItemPointer = &gItemPointer;
|
||||||
|
// Sell Item
|
||||||
|
iPrice += SellItem( gItemPointer );
|
||||||
|
gpItemPointer = NULL;
|
||||||
|
fMapInventoryItem = FALSE;
|
||||||
|
if (iPrice == 0) {
|
||||||
|
iPrice = 1;
|
||||||
|
}
|
||||||
|
anythingSold = true;
|
||||||
|
HandleButtonStatesWhileMapInventoryActive();
|
||||||
}
|
}
|
||||||
// Dirty interface
|
|
||||||
fMapPanelDirty = TRUE;
|
|
||||||
gpItemPointer = &gItemPointer;
|
|
||||||
// Sell Item
|
|
||||||
iPrice += SellItem( gItemPointer );
|
|
||||||
gpItemPointer = NULL;
|
|
||||||
fMapInventoryItem = FALSE;
|
|
||||||
if (iPrice == 0) {
|
|
||||||
iPrice = 1;
|
|
||||||
}
|
|
||||||
anythingSold = true;
|
|
||||||
HandleButtonStatesWhileMapInventoryActive();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(anythingSold == true)
|
if(anythingSold == true)
|
||||||
|
|||||||
@@ -66,7 +66,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="Winmm.lib"
|
AdditionalDependencies="Winmm.lib"
|
||||||
OutputFile="$(OutDir)\ja2_deb_en_2037.exe"
|
OutputFile="$(OutDir)\ja2_deb_en_2039.exe"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
SubSystem="2"
|
SubSystem="2"
|
||||||
@@ -145,7 +145,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="Winmm.lib"
|
AdditionalDependencies="Winmm.lib"
|
||||||
OutputFile="$(OutDir)\ja2_rel_en_2037.exe"
|
OutputFile="$(OutDir)\ja2_rel_en_2039.exe"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
GenerateMapFile="true"
|
GenerateMapFile="true"
|
||||||
|
|||||||
Reference in New Issue
Block a user