Actually fix dedi crash for P_LookForPlayers
This commit is contained in:
parent
d621a0f0c4
commit
7f8d64cb05
2 changed files with 26 additions and 0 deletions
|
|
@ -442,6 +442,7 @@ void P_NewChaseDir(mobj_t *actor)
|
|||
boolean P_LookForPlayers(mobj_t *actor, boolean allaround, boolean tracer, fixed_t dist)
|
||||
{
|
||||
INT32 c = 0, stop;
|
||||
INT32 i, pcount = 0;
|
||||
player_t *player;
|
||||
angle_t an;
|
||||
|
||||
|
|
@ -453,6 +454,18 @@ boolean P_LookForPlayers(mobj_t *actor, boolean allaround, boolean tracer, fixed
|
|||
|
||||
stop = (actor->lastlook - 1) % PLAYERSMASK;
|
||||
|
||||
// No players? Don't bother.
|
||||
for (i = 0; i < MAXPLAYERS; i++)
|
||||
{
|
||||
if (!playeringame[i] || players[i].spectator)
|
||||
continue;
|
||||
|
||||
pcount++;
|
||||
}
|
||||
|
||||
if (!pcount)
|
||||
return false;
|
||||
|
||||
for (; ; actor->lastlook = (actor->lastlook + 1) % PLAYERSMASK)
|
||||
{
|
||||
// done looking
|
||||
|
|
|
|||
13
src/p_mobj.c
13
src/p_mobj.c
|
|
@ -4270,6 +4270,7 @@ static void P_SpawnItemCapsuleParts(mobj_t *mobj)
|
|||
boolean P_BossTargetPlayer(mobj_t *actor, boolean closest)
|
||||
{
|
||||
INT32 stop = -1, c = 0;
|
||||
INT32 i, pcount = 0;
|
||||
player_t *player;
|
||||
fixed_t dist, lastdist = 0;
|
||||
|
||||
|
|
@ -4278,6 +4279,18 @@ boolean P_BossTargetPlayer(mobj_t *actor, boolean closest)
|
|||
actor->lastlook = P_RandomByte();
|
||||
actor->lastlook %= PLAYERSMASK;
|
||||
|
||||
// No players? Don't bother.
|
||||
for (i = 0; i < MAXPLAYERS; i++)
|
||||
{
|
||||
if (!playeringame[i] || players[i].spectator)
|
||||
continue;
|
||||
|
||||
pcount++;
|
||||
}
|
||||
|
||||
if (!pcount)
|
||||
return false;
|
||||
|
||||
for( ; ; actor->lastlook = (actor->lastlook+1) % PLAYERSMASK)
|
||||
{
|
||||
// save the first look so we stop next time.
|
||||
|
|
|
|||
Loading…
Reference in a new issue