mirror of
https://github.com/1dot13/source.git
synced 2026-08-05 14:00:23 +02:00
Fixes (by Buggler)
- fixed autoplace object getting lost from merc inventory to sector when another sector shown (CTRL+LMB) - fixed LBE autoplace from merc inventory - fixed CTRL/CTRL+SHIFT behavior when autoplace from merc inv ** Autoplace objects to & from between merc inv & map sector should work proper now (even in another sector inventory) - fixed missing balance & amount during money withdrawal in vanilla classic git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@5781 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
+14
-15
@@ -6811,7 +6811,6 @@ void InitializeWorldSize(INT16 sSectorX, INT16 sSectorY , INT8 bSectorZ)
|
||||
void GetMapKeyboardInput( UINT32 *puiNewEvent )
|
||||
{
|
||||
InputAtom InputEvent;
|
||||
POINT MousePos;
|
||||
INT8 bSquadNumber;
|
||||
UINT8 ubGroupId = 0;
|
||||
BOOLEAN fCtrl, fAlt;
|
||||
@@ -9489,19 +9488,6 @@ void MAPInvClickCallback( MOUSE_REGION *pRegion, INT32 iReason )
|
||||
return;
|
||||
}
|
||||
|
||||
if ( _KeyDown(CTRL) )
|
||||
{
|
||||
//CleanUpStack( &( pSoldier->inv[ uiHandPos ] ), NULL );
|
||||
|
||||
if( AutoPlaceObjectToWorld(pSoldier, &( pSoldier->inv[ uiHandPos ] ) ) )
|
||||
{
|
||||
//INVRenderINVPanelItem( pSoldier, uiHandPos, DIRTYLEVEL2); // redraw the empty slot
|
||||
|
||||
fTeamPanelDirty = TRUE;
|
||||
RenderTeamRegionBackground();
|
||||
}
|
||||
}
|
||||
|
||||
/* CHRISL: For New Inventory system. Are we removing an existing LBE item? If so, we need to pull
|
||||
all items in the relevant IC Group pockets out of the soldiers inventory and put them into the LBE items
|
||||
inventory. But first, find out if we already have a LBE item inventory for this item and this merc. If we
|
||||
@@ -9538,7 +9524,7 @@ void MAPInvClickCallback( MOUSE_REGION *pRegion, INT32 iReason )
|
||||
|
||||
HandleTacticalEffectsOfEquipmentChange( pSoldier, uiHandPos, usOldItemIndex, NOTHING );
|
||||
|
||||
fInterfacePanelDirty = DIRTYLEVEL2;
|
||||
fInterfacePanelDirty = DIRTYLEVEL2;
|
||||
fCharacterInfoPanelDirty = TRUE;
|
||||
}
|
||||
else // item in cursor
|
||||
@@ -9851,6 +9837,19 @@ void MAPBeginItemPointer( SOLDIERTYPE *pSoldier, UINT8 ubHandPos )
|
||||
numToMove = 1;
|
||||
}
|
||||
pSoldier->inv[ubHandPos].MoveThisObjectTo(gItemPointer, numToMove, pSoldier, ubHandPos);
|
||||
|
||||
//Autoplace to map sector invectory
|
||||
if ( _KeyDown(CTRL) )
|
||||
{
|
||||
if( AutoPlaceObjectToWorld(pSoldier, &gItemPointer) )
|
||||
{
|
||||
//INVRenderINVPanelItem( pSoldier, uiHandPos, DIRTYLEVEL2); // redraw the empty slot
|
||||
|
||||
fTeamPanelDirty = TRUE;
|
||||
RenderTeamRegionBackground();
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if ( gItemPointer.exists() == false )
|
||||
{
|
||||
|
||||
@@ -7281,7 +7281,10 @@ void RenderItemDescriptionBox( )
|
||||
swprintf( pStr, L"%ld", gRemoveMoney.uiMoneyRemaining );
|
||||
InsertCommasForDollarFigure( pStr );
|
||||
InsertDollarSignInToString( pStr );
|
||||
FindFontRightCoordinates( gMoneyStats[ 4 ].sX + 50, gMoneyStats[ 4 ].sY, ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||
if (UsingNewInventorySystem() == true)
|
||||
FindFontRightCoordinates( gMoneyStats[ 4 ].sX + 50, gMoneyStats[ 4 ].sY, ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||
else
|
||||
FindFontRightCoordinates( gMoneyStats[ 4 ].sX + 5, gMoneyStats[ 4 ].sY, ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||
mprintf( usX, usY, pStr );
|
||||
|
||||
//Display the total amount of money removing
|
||||
@@ -7289,7 +7292,10 @@ void RenderItemDescriptionBox( )
|
||||
swprintf( pStr, L"%ld", gRemoveMoney.uiMoneyRemoving );
|
||||
InsertCommasForDollarFigure( pStr );
|
||||
InsertDollarSignInToString( pStr );
|
||||
FindFontRightCoordinates( gMoneyStats[ 5 ].sX + 50, gMoneyStats[ 5 ].sY, ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||
if (UsingNewInventorySystem() == true)
|
||||
FindFontRightCoordinates( gMoneyStats[ 5 ].sX + 50, gMoneyStats[ 5 ].sY, ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||
else
|
||||
FindFontRightCoordinates( gMoneyStats[ 5 ].sX + 5, gMoneyStats[ 5 ].sY, ITEM_STATS_WIDTH ,ITEM_STATS_HEIGHT ,pStr, BLOCKFONT2, &usX, &usY);
|
||||
mprintf( usX, usY, pStr );
|
||||
}
|
||||
else
|
||||
|
||||
+5
-3
@@ -6775,10 +6775,12 @@ BOOLEAN AutoPlaceObjectToWorld(SOLDIERTYPE * pSoldier, OBJECTTYPE * pObj, INT8 b
|
||||
}
|
||||
|
||||
// WANNE: This should fix the bug, that items get lost in the sector when switching between tactical sectors
|
||||
// This bug was introduced in revision 4571 (2011-07-14)
|
||||
// This bug was introduced in revision 4571 (2011-07-14), fixed in 5228
|
||||
// Buggler: Previously item get lost when holding CTRL & clicking on item in merc inventory when map screen shows other sectors
|
||||
// Fixed above issue on commit in 5781 (2013-01-13). Please remove all comments if no reported issue after adequate public testing
|
||||
|
||||
//if(!fShowMapInventoryPool)
|
||||
if(fShowMapInventoryPool)
|
||||
if(!fShowMapInventoryPool)
|
||||
//if(fShowMapInventoryPool) // Buggler: to remove too
|
||||
{
|
||||
fShowMapInventoryPool = TRUE;
|
||||
CreateDestroyMapInventoryPoolButtons(FALSE);
|
||||
|
||||
Reference in New Issue
Block a user