diff --git a/GameVersion.cpp b/GameVersion.cpp index cf198d5b..ca7b5659 100644 --- a/GameVersion.cpp +++ b/GameVersion.cpp @@ -23,7 +23,7 @@ wchar_t zVersionLabel[256] = { L"Beta v. 0.98" }; #else //RELEASE BUILD VERSION - wchar_t zVersionLabel[256] = { L"Release v1.13.867" }; + wchar_t zVersionLabel[256] = { L"Release v1.13.868" }; #endif diff --git a/JA2.suo b/JA2.suo index c8dbacc8..7bed14d7 100644 Binary files a/JA2.suo and b/JA2.suo differ diff --git a/JA2.vcproj b/JA2.vcproj index b3f2f0b4..4b80f8ad 100644 --- a/JA2.vcproj +++ b/JA2.vcproj @@ -546,7 +546,7 @@ bDoAutofire--; + if (pSoldier->bDoAutofire > 0) + { ubBurstAPs = CalcAPsToAutofire( CalcActionPoints( pSoldier ), &(pSoldier->inv[BestAttack.bWeaponIn]), pSoldier->bDoAutofire ); if (pSoldier->bActionPoints - (BestAttack.ubAPCost - BestAttack.ubAimTime) >= ubBurstAPs ) @@ -4402,8 +4404,14 @@ bCanAttack = FALSE; BestAttack.ubAPCost = BestAttack.ubAPCost - BestAttack.ubAimTime + CalcAPsToAutofire( CalcActionPoints( pSoldier ), &(pSoldier->inv[BestAttack.bWeaponIn]), pSoldier->bDoAutofire ); } } - - pSoldier->bDoAutofire = 0; + } + else + { + pSoldier->bAimTime = 0; + pSoldier->bDoBurst = 0; + pSoldier->bDoAutofire = 0; + // not enough aps - do somthing else + } } ////////////////////////////////////////////////////////////////////////// diff --git a/TileEngine/worlddef.cpp b/TileEngine/worlddef.cpp index e9e5a7d5..159ff0fe 100644 --- a/TileEngine/worlddef.cpp +++ b/TileEngine/worlddef.cpp @@ -1302,7 +1302,11 @@ void CompileTileMovementCosts( UINT16 usGridNo ) { if (!(pStructure->fFlags & STRUCTURE_PASSABLE || pStructure->fFlags & STRUCTURE_NORMAL_ROOF)) { - fStructuresOnRoof = TRUE; + // DNS: Try a fix to prevent people from "permanently" blocking the roof + if (!(pStructure->fFlags & STRUCTURE_PERSON)) + { + fStructuresOnRoof = TRUE; + } } } pStructure = pStructure->pNext;