FindAmmoToReload: added assert messages to indicate that searching attached weapon failed.

DecideAction: initialize bWeaponMode = WM_NORMAL to prevent FindAmmoToReload from crashing.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8892 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Sevenfm
2020-08-31 16:35:56 +00:00
parent 4344c2caf8
commit 144cdc0131
2 changed files with 25 additions and 7 deletions
+15
View File
@@ -707,6 +707,8 @@ INT8 DecideActionGreen(SOLDIERTYPE *pSoldier)
pSoldier->bStealthMode = FALSE;
// disable reverse movement mode
pSoldier->bReverse = FALSE;
// sevenfm: initialize data
pSoldier->bWeaponMode = WM_NORMAL;
BOOLEAN fCivilian = (PTR_CIVILIAN && (pSoldier->ubCivilianGroup == NON_CIV_GROUP || pSoldier->aiData.bNeutral || (pSoldier->ubBodyType >= FATCIV && pSoldier->ubBodyType <= CRIPPLECIV) ) );
BOOLEAN fCivilianOrMilitia = PTR_CIV_OR_MILITIA;
@@ -1555,6 +1557,8 @@ INT8 DecideActionYellow(SOLDIERTYPE *pSoldier)
pSoldier->bStealthMode = FALSE;
// disable reverse movement mode
pSoldier->bReverse = FALSE;
// sevenfm: initialize data
pSoldier->bWeaponMode = WM_NORMAL;
if (fCivilian || (gGameExternalOptions.fAllNamedNpcsDecideAction && pSoldier->ubProfile != NO_PROFILE))
{
@@ -2478,6 +2482,8 @@ INT8 DecideActionRed(SOLDIERTYPE *pSoldier)
pSoldier->bStealthMode = FALSE;
// disable reverse movement mode
pSoldier->bReverse = FALSE;
// sevenfm: initialize data
pSoldier->bWeaponMode = WM_NORMAL;
// if we have absolutely no action points, we can't do a thing under RED!
if ( pSoldier->bActionPoints <= 0 ) //Action points can be negative
@@ -4855,6 +4861,8 @@ INT16 ubMinAPCost;
pSoldier->bStealthMode = FALSE;
// disable reverse movement mode
pSoldier->bReverse = FALSE;
// sevenfm: initialize data
pSoldier->bWeaponMode = WM_NORMAL;
// sevenfm: stop flanking when we see enemy
if( AICheckIsFlanking(pSoldier) )
@@ -7113,6 +7121,13 @@ INT8 ArmedVehicleDecideAction( SOLDIERTYPE *pSoldier )
{
INT8 bAction = AI_ACTION_NONE;
// sevenfm: disable stealth mode
pSoldier->bStealthMode = FALSE;
// disable reverse movement mode
pSoldier->bReverse = FALSE;
// sevenfm: initialize data
pSoldier->bWeaponMode = WM_NORMAL;
switch ( pSoldier->aiData.bAlertStatus )
{
case STATUS_GREEN: