From beb6e35c093a39278e4ed45e7ee91a4101033d2f Mon Sep 17 00:00:00 2001 From: Shadooow Date: Wed, 12 Jan 2022 02:11:34 +0000 Subject: [PATCH] Improved behavior of buttons in Tactical Placement GUI when hot-dropping. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9248 3b4a5df2-a311-0410-b5c6-a8a6f20db521 --- TileEngine/Tactical Placement GUI.cpp | 31 ++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/TileEngine/Tactical Placement GUI.cpp b/TileEngine/Tactical Placement GUI.cpp index fb02d613..06384cf3 100644 --- a/TileEngine/Tactical Placement GUI.cpp +++ b/TileEngine/Tactical Placement GUI.cpp @@ -1444,9 +1444,20 @@ void PlaceMercs() { PickUpMercPiece( i ); } - gubSelectedGroupID = 0; - gbSelectedMercID = 0; - SetCursorMerc( 0 ); + if (ButtonList[iTPButtons[SPREAD_BUTTON]]->uiFlags & BUTTON_ENABLED) + { + gubSelectedGroupID = 0; + gbSelectedMercID = 0; + SetCursorMerc(0); + } + else//spread button disabled mean hotdrop + { + gubSelectedGroupID = gMercPlacement[0].pSoldier->ubGroupID; + ButtonList[iTPButtons[GROUP_BUTTON]]->uiFlags |= BUTTON_CLICKED_ON | BUTTON_DIRTY; + gubDefaultButton = GROUP_BUTTON; + gbSelectedMercID = 0; + SetCursorMerc(gbSelectedMercID); + } gfEveryonePlaced = FALSE; break; default: @@ -1485,8 +1496,18 @@ void GroupPlacementsCallback( GUI_BUTTON *btn, INT32 reason ) { btn->uiFlags &= ~BUTTON_CLICKED_ON; btn->uiFlags |= BUTTON_DIRTY; - gubDefaultButton = CLEAR_BUTTON; - gubSelectedGroupID = 0; + if (ButtonList[iTPButtons[SPREAD_BUTTON]]->uiFlags & BUTTON_ENABLED) + { + gubDefaultButton = CLEAR_BUTTON; + gubSelectedGroupID = 0; + } + else//spread button disabled mean hotdrop + { + gubDefaultButton = CLEAR_BUTTON; + gubSelectedGroupID = 0; + gbSelectedMercID = -1; + SetCursorMerc(gbSelectedMercID); + } } else {