- made the z coordinate part of the CheckResults for the MultiBlock iterators and use these for all height checks in the iterator loops. This will later make it easier to support arbitrary portals with height displacements.

This commit is contained in:
Christoph Oelckers 2016-02-21 12:04:52 +01:00
commit abcc6049b9
4 changed files with 20 additions and 6 deletions

View file

@ -534,6 +534,12 @@ void AActor::SetOrigin (fixed_t ix, fixed_t iy, fixed_t iz, bool moving)
P_FindFloorCeiling(this, FFCF_ONLYSPAWNPOS);
}
//===========================================================================
//
// FBlockNode - allows to link actors into multiple blocks in the blockmap
//
//===========================================================================
FBlockNode *FBlockNode::FreeBlocks = NULL;
FBlockNode *FBlockNode::Create (AActor *who, int x, int y, int group)
@ -789,7 +795,9 @@ bool FMultiBlockLinesIterator::Next(FMultiBlockLinesIterator::CheckResult *item)
if (line != NULL)
{
item->line = line;
item->position = offset;
item->position.x = offset.x;
item->position.y = offset.y;
item->position.z = checkpoint.z;
item->portalflags = portalflags;
return true;
}