- Fixed: If P_BounceWall() can't find a wall when it does its trace, but it

was entered because a line blocked the projectile, then it should still use
  that blocking line for the bounce.


SVN r788 (trunk)
This commit is contained in:
Randy Heit 2008-03-07 01:29:26 +00:00
parent 68f726e422
commit a5004f8827
2 changed files with 5 additions and 2 deletions

View file

@ -1,4 +1,7 @@
March 6, 2008
- Fixed: If P_BounceWall() can't find a wall when it does its trace, but it
was entered because a line blocked the projectile, then it should still use
that blocking line for the bounce.
- The full master volume SysEx is now always sent to the MIDI device, even if
it seems to have a working volume control.
- Renamed music_midi_stream.cpp to music_midi_base.cpp.

View file

@ -2449,7 +2449,7 @@ bool P_BounceWall (AActor *mo)
}
bestslidefrac = FRACUNIT+1;
if (P_PathTraverse(leadx, leady, leadx+mo->momx, leady+mo->momy,
PT_ADDLINES, PTR_BounceTraverse))
PT_ADDLINES, PTR_BounceTraverse) && BlockingLine == NULL)
{ // Could not find a wall, so bounce off the floor/ceiling instead.
fixed_t floordist = mo->z - mo->floorz;
fixed_t ceildist = mo->ceilingz - mo->z;
@ -2470,7 +2470,7 @@ bool P_BounceWall (AActor *mo)
}
*/
}
line = bestslideline;
line = bestslideline ? bestslideline : BlockingLine;
if (line->special == Line_Horizon)
{