fixed AI freeze on creatures attacking crows

fixed some broken debug messages

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8508 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
TheBob
2017-11-20 23:43:16 +00:00
parent 3099b78146
commit 209f5f7c1b
4 changed files with 11 additions and 5 deletions
+2 -1
View File
@@ -7645,7 +7645,8 @@ UINT16 MagazineClassIndexToItemType(UINT16 usMagIndex)
// WANNE: Now ammo can be inserted anywhere in Items.xml (before only on index > 70 [FIRST_AMMO] (fix by Realist)
//for (usLoop = FIRST_AMMO; usLoop < MAXITEMS; usLoop++)
for ( UINT16 usLoop = 0; usLoop < gMAXITEMS_READ; ++usLoop )
UINT16 usLoop;
for (usLoop = 0; usLoop < gMAXITEMS_READ; ++usLoop )
{
if (Item[usLoop].ubClassIndex == usMagIndex && Item[usLoop].usItemClass == IC_AMMO )
{
+2 -1
View File
@@ -638,9 +638,10 @@ extern CLOTHES_STRUCT Clothes[CLOTHES_MAX];
// This macro should be used whenever we want to see if someone is neutral
// IF WE ARE CONSIDERING ATTACKING THEM. Creatures & bloodcats will attack neutrals
// but they can't attack empty vehicles!!
// the_bob: also, creatures won't attack crows, because it seems to confuse the AI and cause freezes
#define CONSIDERED_NEUTRAL( me, them ) (\
( them->aiData.bNeutral || them->usSoldierFlagMask & (SOLDIER_COVERT_CIV|SOLDIER_COVERT_SOLDIER|SOLDIER_POW) || (them->flags.uiStatusFlags & SOLDIER_PC && them->stats.bLife < OKLIFE) ) \
&& ( me->bTeam != CREATURE_TEAM || (them->flags.uiStatusFlags & SOLDIER_VEHICLE) ) \
&& ( me->bTeam != CREATURE_TEAM || ( (them->flags.uiStatusFlags & SOLDIER_VEHICLE) || (them->ubBodyType == CROW) ) ) \
&& !( me->flags.uiStatusFlags & SOLDIER_BOXER && them->flags.uiStatusFlags & SOLDIER_BOXER ) \
)
+4
View File
@@ -1570,6 +1570,10 @@ void CalcBestStab(SOLDIERTYPE *pSoldier, ATTACKTYPE *pBestStab, BOOLEAN fBladeAt
if ( pOpponent->ubWhatKindOfMercAmI == MERC_TYPE__VEHICLE && GetNumberInVehicle( pOpponent->bVehicleID ) == 0 )
continue;
// the_bob: don't stab the bird!
if (pOpponent->ubBodyType == CROW)
continue;
// Special stuff for Carmen the bounty hunter
if (pSoldier->aiData.bAttitude == ATTACKSLAYONLY && pOpponent->ubProfile != SLAY)
continue; // next opponent
+3 -3
View File
@@ -118,9 +118,9 @@ TILE_IMAGERY *LoadTileSurface( STR8 cFilename )
}
strcat( cAdditionalPropertiesFilename, ADDITIONAL_TILE_PROPERTIES_EXTENSION );
// first in /Tilesets/XX/
if (FileExists( cAdditionalPropertiesFilename ))
if (FileExists(cAdditionalPropertiesFilename))
{
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,String("LoadExternalGameplayData, fileName = %s", fileName));
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,String("LoadExternalGameplayData, fileName = %s", cAdditionalPropertiesFilename));
SGP_THROW_IFFALSE(ReadInAdditionalTileProperties(cAdditionalPropertiesFilename), cAdditionalPropertiesFilename);
}
else
@@ -130,7 +130,7 @@ TILE_IMAGERY *LoadTileSurface( STR8 cFilename )
sprintf( cCommonAdditionalPropertiesFilename, "TILESETS\\ADDITIONALPROPERTIES%s", cEndOfName );
if (FileExists( cCommonAdditionalPropertiesFilename ))
{
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,String("LoadExternalGameplayData, fileName = %s", fileName));
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,String("LoadExternalGameplayData, fileName = %s", cAdditionalPropertiesFilename));
SGP_THROW_IFFALSE(ReadInAdditionalTileProperties(cCommonAdditionalPropertiesFilename), cCommonAdditionalPropertiesFilename);
}
}