mirror of
https://github.com/1dot13/source.git
synced 2026-09-09 14:46:05 +02:00
Fixed moveitem dropoff gridno - gear is no longer dropped in inacessible places
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6287 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -5915,6 +5915,10 @@ void HandleEquipmentMove( INT16 sMapX, INT16 sMapY, INT8 bZ )
|
|||||||
CHAR16 wSectorName[ 64 ];
|
CHAR16 wSectorName[ 64 ];
|
||||||
GetShortSectorString( sMapX, sMapY, wSectorName );
|
GetShortSectorString( sMapX, sMapY, wSectorName );
|
||||||
|
|
||||||
|
INT32 sDropOffGridNo = gMapInformation.sCenterGridNo;
|
||||||
|
if ( !GridNoOnVisibleWorldTile( sDropOffGridNo ) )
|
||||||
|
sDropOffGridNo = RandomGridNo();
|
||||||
|
|
||||||
WORLDITEM* pWorldItem_Target = NULL;
|
WORLDITEM* pWorldItem_Target = NULL;
|
||||||
|
|
||||||
// now loop over all sectors from which we take stuff, and move the equipment
|
// now loop over all sectors from which we take stuff, and move the equipment
|
||||||
@@ -6013,12 +6017,12 @@ void HandleEquipmentMove( INT16 sMapX, INT16 sMapY, INT8 bZ )
|
|||||||
{
|
{
|
||||||
for (UINT16 i = 0; i < moveobjectcounter; ++i )
|
for (UINT16 i = 0; i < moveobjectcounter; ++i )
|
||||||
{
|
{
|
||||||
AddItemToPool( RandomGridNo(), &(pObjectToMove[i]), 1 , 0, (WOLRD_ITEM_FIND_SWEETSPOT_FROM_GRIDNO|WORLD_ITEM_REACHABLE), -1 );
|
AddItemToPool( sDropOffGridNo, &(pObjectToMove[i]), 1 , 0, (WOLRD_ITEM_FIND_SWEETSPOT_FROM_GRIDNO|WORLD_ITEM_REACHABLE), -1 );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
AddItemsToUnLoadedSector( sMapX, sMapY, bZ, RandomGridNo(), moveobjectcounter, pObjectToMove, 0, WORLD_ITEM_REACHABLE, 0, 1, FALSE );
|
AddItemsToUnLoadedSector( sMapX, sMapY, bZ, sDropOffGridNo, moveobjectcounter, pObjectToMove, 0, WORLD_ITEM_REACHABLE, 0, 1, FALSE );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( pObjectToMove )
|
if ( pObjectToMove )
|
||||||
@@ -11519,6 +11523,28 @@ void CheckAndUpdateTacticalAssignmentPopUpPositions( void )
|
|||||||
|
|
||||||
SetBoxPosition( ghTrainingBox, pPoint );
|
SetBoxPosition( ghTrainingBox, pPoint );
|
||||||
}
|
}
|
||||||
|
else if ( fShowMoveItemMenu )
|
||||||
|
{
|
||||||
|
GetBoxSize( ghMoveItemBox, &pDimensions );
|
||||||
|
|
||||||
|
if( gsAssignmentBoxesX + pDimensions2.iRight + pDimensions.iRight >= SCREEN_WIDTH )
|
||||||
|
{
|
||||||
|
gsAssignmentBoxesX = ( INT16 ) ( (SCREEN_WIDTH - 1) - ( pDimensions2.iRight + pDimensions.iRight ) );
|
||||||
|
SetRenderFlags( RENDER_FLAG_FULL );
|
||||||
|
}
|
||||||
|
|
||||||
|
if( gsAssignmentBoxesY + pDimensions2.iBottom + ( ( GetFontHeight( MAP_SCREEN_FONT ) + 2 ) * ASSIGN_MENU_MOVE_ITEMS ) >= (SCREEN_HEIGHT - 120) )
|
||||||
|
{
|
||||||
|
gsAssignmentBoxesY = ( INT16 )( (SCREEN_HEIGHT - 121) - ( pDimensions2.iBottom ) - ( ( GetFontHeight( MAP_SCREEN_FONT ) + 2 ) * ASSIGN_MENU_MOVE_ITEMS ) );
|
||||||
|
SetRenderFlags( RENDER_FLAG_FULL );
|
||||||
|
}
|
||||||
|
|
||||||
|
pPoint.iX = gsAssignmentBoxesX + pDimensions2.iRight;
|
||||||
|
pPoint.iY = gsAssignmentBoxesY;
|
||||||
|
pPoint.iY += ( ( GetFontHeight( MAP_SCREEN_FONT ) + 2 ) * ASSIGN_MENU_MOVE_ITEMS );
|
||||||
|
|
||||||
|
SetBoxPosition( ghMoveItemBox, pPoint );
|
||||||
|
}
|
||||||
// HEADROCK HAM 3.6: Facility Sub-menu
|
// HEADROCK HAM 3.6: Facility Sub-menu
|
||||||
else if( fShowFacilityAssignmentMenu == TRUE )
|
else if( fShowFacilityAssignmentMenu == TRUE )
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user