diff --git a/Generals/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp b/Generals/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp index 7c13cab791..8ffb48e36e 100644 --- a/Generals/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp +++ b/Generals/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp @@ -1123,8 +1123,14 @@ void ChinookAIUpdate::privateCombatDrop( Object* target, const Coord3D& pos, Com //------------------------------------------------------------------------------------------------- void ChinookAIUpdate::aiDoCommand(const AICommandParms* parms) { +#if RETAIL_COMPATIBLE_CRC // this gets reset every time a command is issued. setAirfieldForHealing(INVALID_ID); +#else + // Don't leave healing state for evacuation commands + if (parms->m_cmd != AICMD_EVACUATE && parms->m_cmd != AICMD_EXIT) + setAirfieldForHealing(INVALID_ID); +#endif if (!isAllowedToRespondToAiCommands(parms)) return; diff --git a/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp b/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp index c6fca75821..5507f33df6 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Update/AIUpdate/ChinookAIUpdate.cpp @@ -1258,8 +1258,14 @@ void ChinookAIUpdate::privateCombatDrop( Object* target, const Coord3D& pos, Com //------------------------------------------------------------------------------------------------- void ChinookAIUpdate::aiDoCommand(const AICommandParms* parms) { +#if RETAIL_COMPATIBLE_CRC // this gets reset every time a command is issued. setAirfieldForHealing(INVALID_ID); +#else + // Don't leave healing state for evacuation commands + if (parms->m_cmd != AICMD_EVACUATE && parms->m_cmd != AICMD_EXIT) + setAirfieldForHealing(INVALID_ID); +#endif if (!isAllowedToRespondToAiCommands(parms)) return;