mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
- Bugfix: Fixed infinite loops that could occur in AI Actions (by Mae)
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6680 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -858,12 +858,13 @@ INT32 RandDestWithinRange(SOLDIERTYPE *pSoldier)
|
||||
{
|
||||
if (fLimited)
|
||||
{
|
||||
UINT8 ubTriesLeft2 = 128;
|
||||
do//dnl ch53 111009 This loop should increase search performance, but probably need some counter to prevent eventual endless loop
|
||||
{
|
||||
sXOffset = ((INT16)Random(sXRange)) - sMaxLeft;
|
||||
sYOffset = ((INT16)Random(sYRange)) - sMaxUp;
|
||||
sRandDest = usOrigin + sXOffset + (MAXCOL * sYOffset);
|
||||
}while(!GridNoOnVisibleWorldTile(sRandDest));
|
||||
}while(!GridNoOnVisibleWorldTile(sRandDest) && --ubTriesLeft2);
|
||||
#ifdef BETAVERSION
|
||||
if ((sRandDest < 0) || (sRandDest >= GRIDSIZE))
|
||||
{
|
||||
@@ -874,10 +875,11 @@ INT32 RandDestWithinRange(SOLDIERTYPE *pSoldier)
|
||||
}
|
||||
else
|
||||
{
|
||||
UINT8 ubTriesLeft2 = 128;
|
||||
do//dnl ch53 111009 This loop should increase search performance, but probably need some counter to prevent eventual endless loop
|
||||
{
|
||||
sRandDest = PreRandom(GRIDSIZE);
|
||||
}while(!GridNoOnVisibleWorldTile(sRandDest));
|
||||
}while(!GridNoOnVisibleWorldTile(sRandDest) && --ubTriesLeft2);
|
||||
}
|
||||
|
||||
if ( usRoom && InARoom( sRandDest, &usTempRoom ) && usTempRoom != usRoom )
|
||||
|
||||
Reference in New Issue
Block a user