- Fixed: For map spawns any change to an actor's floor z-coordinate must be

delayed until after its z-coordinate has been set. That means that for 
  map spawns AActor::StaticSpawn may not call P_FindFloorCeiling for such
  actors.


SVN r1352 (trunk)
This commit is contained in:
Christoph Oelckers 2009-01-04 15:51:00 +00:00
parent 78933df10d
commit a73b008255
2 changed files with 7 additions and 2 deletions

View File

@ -1,4 +1,8 @@
January 4, 2009 (Changes by Graf Zahl)
- Fixed: For map spawns any change to an actor's floor z-coordinate must be
delayed until after its z-coordinate has been set. That means that for
map spawns AActor::StaticSpawn may not call P_FindFloorCeiling for such
actors.
- added GZDoom's 3D floor physics code. This is not active yet so anything
compiled from this code won't have any support for it!
- Used new functionality to avoid moving the puff around in SpawnDeepSplash.

View File

@ -3226,8 +3226,9 @@ AActor *AActor::StaticSpawn (const PClass *type, fixed_t ix, fixed_t iy, fixed_t
actor->ceilingsector = actor->Sector;
actor->ceilingpic = actor->ceilingsector->GetTexture(sector_t::ceiling);
// Check if there's something solid to stand on between the current position and the
// current sector's floor.
P_FindFloorCeiling(actor, true);
// current sector's floor. For map spawns this must be delayed until after setting the
// z-coordinate.
if (!SpawningMapThing) P_FindFloorCeiling(actor, true);
}
else if (!(actor->flags5 & MF5_NOINTERACTION))
{