From e601a49695ad75c4a7646743263720d71da00c37 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Tue, 16 May 2006 09:26:54 +0000 Subject: [PATCH] Fixed ZDBSP seg splitter. On occasion it assigned the offset to the incorrect of the two segs created by a split. SVN r118 (trunk) --- nodebuild.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nodebuild.cpp b/nodebuild.cpp index e638941..008a228 100644 --- a/nodebuild.cpp +++ b/nodebuild.cpp @@ -952,9 +952,10 @@ DWORD FNodeBuilder::SplitSeg (DWORD segnum, int splitvert, int v1InFront) newseg = Segs[segnum]; dx = double(Vertices[splitvert].x - Vertices[newseg.v1].x); dy = double(Vertices[splitvert].y - Vertices[newseg.v1].y); - newseg.offset += fixed_t (sqrt (dx*dx + dy*dy)); if (v1InFront > 0) { + newseg.offset += fixed_t (sqrt (dx*dx + dy*dy)); + newseg.v1 = splitvert; Segs[segnum].v2 = splitvert; @@ -971,6 +972,8 @@ DWORD FNodeBuilder::SplitSeg (DWORD segnum, int splitvert, int v1InFront) } else { + Segs[segnum].offset += fixed_t (sqrt (dx*dx + dy*dy)); + Segs[segnum].v1 = splitvert; newseg.v2 = splitvert;