Fixed, Visual mode: in some cases info lines for polyobject setup things were not shown.

Fixed, Visual mode: z position of info lines for polyobject setup things was calculated incorrectly.
Updated ZDoom_DECORATE.cfg.
This commit is contained in:
MaxED 2015-06-03 13:20:06 +00:00
parent 922404bf10
commit 4034bd4c0c
4 changed files with 10 additions and 8 deletions

View file

@ -304,7 +304,7 @@ keywords
A_SkelWhoosh = "A_SkelWhoosh";
A_StartFire = "A_StartFire";
A_FireCrackle = "A_FireCrackle";
A_BFGSpray = "A_BFGSpray[(str flashtype = \"BFGExtra\"[, int numrays = 40[, int damage = 15[, float angle = 90.0[, float distance = 1024.0[, float vrange = 32.0[, int explicit_damage = 0]]]]]])]";
A_BFGSpray = "A_BFGSpray[(str flashtype = \"BFGExtra\"[, int numrays = 40[, int damagecnt = 15[, float angle = 90.0[, float distance = 1024.0[, float vrange = 32.0[, int explicit_damage = 0]]]]]])]";
A_BarrelDestroy = "A_BarrelDestroy";
//Miscellaneous functions not listed in the "Action functions" wiki article
A_Bang4Cloud = "A_Bang4Cloud";
@ -779,6 +779,7 @@ constants
NOTELEFRAG;
ALWAYSTELEFRAG;
DONTDRAIN;
LAXTELEFRAGDMG;
//Appearance & Sound
BRIGHT;
INVISIBLE;

View file

@ -3,7 +3,6 @@ using CodeImp.DoomBuilder.Map;
using CodeImp.DoomBuilder.VisualModes;
using CodeImp.DoomBuilder.GZBuilder.Geometry;
using CodeImp.DoomBuilder.Geometry;
using CodeImp.DoomBuilder.Config;
namespace CodeImp.DoomBuilder.GZBuilder.Data
{
@ -25,7 +24,7 @@ namespace CodeImp.DoomBuilder.GZBuilder.Data
foreach (VisualThing vt in visualThings) things.Add(vt.Thing);
ThingsCheckResult result = CheckThings(things);
if (result.ProcessPathNodes || result.ProcessInterpolationPoints || result.ProcessThingsWithGoal || result.ProcessCameras)
if (result.ProcessPathNodes || result.ProcessInterpolationPoints || result.ProcessThingsWithGoal || result.ProcessCameras || result.ProcessPolyobjects)
return GetThingLinks(result, true);
return new List<Line3D>();
}
@ -280,9 +279,12 @@ namespace CodeImp.DoomBuilder.GZBuilder.Data
foreach(Thing anchor in group.Value)
{
start = anchor.Position;
if(correctHeight) start.z += GetCorrectHeight(anchor);
foreach(Thing startspot in polyobjectStartSpots[group.Key])
{
end = startspot.Position;
if(correctHeight) end.z += GetCorrectHeight(startspot);
lines.Add(new Line3D(start, end, Line3DType.ACTIVATOR));
}
}
@ -294,8 +296,7 @@ namespace CodeImp.DoomBuilder.GZBuilder.Data
private static float GetCorrectHeight(Thing thing)
{
ThingTypeInfo tti = General.Map.Data.GetThingInfo(thing.Type);
float height = tti.Height / 2f;
float height = thing.Height / 2f;
if (thing.Sector != null) height += thing.Sector.FloorHeight;
return height;
}

View file

@ -130,7 +130,7 @@ namespace CodeImp.DoomBuilder.BuilderEffects
if(t.Sector == null) t.DetermineSector();
if(t.Sector == null) continue;
d.SectorHeight = Math.Max(0, t.Sector.CeilHeight - (int)General.Map.Data.GetThingInfo(t.Type).Height - t.Sector.FloorHeight);
d.SectorHeight = Math.Max(0, t.Sector.CeilHeight - (int)t.Height - t.Sector.FloorHeight);
if(MaxSafeHeightDistance < d.SectorHeight) MaxSafeHeightDistance = d.SectorHeight;
d.ZOffset = (int)t.Position.z;
}

View file

@ -2206,7 +2206,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
{
if(vt.Thing.Sector == null) continue;
SectorData sd = GetSectorData(vt.Thing.Sector);
vt.OnMove(new Vector3D(vt.Thing.Position, BuilderModesTools.GetHigherThingZ(sd, vt.Thing.Position, vt.Info.Height, vt.Info.AbsoluteZ, vt.Info.Hangs)));
vt.OnMove(new Vector3D(vt.Thing.Position, BuilderModesTools.GetHigherThingZ(sd, vt.Thing.Position, vt.Thing.Height, vt.Info.AbsoluteZ, vt.Info.Hangs)));
}
}
@ -2418,7 +2418,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
{
if(vt.Thing.Sector == null) continue;
SectorData sd = GetSectorData(vt.Thing.Sector);
vt.OnMove(new Vector3D(vt.Thing.Position, BuilderModesTools.GetLowerThingZ(sd, vt.Thing.Position, vt.Info.Height, vt.Info.AbsoluteZ, vt.Info.Hangs)));
vt.OnMove(new Vector3D(vt.Thing.Position, BuilderModesTools.GetLowerThingZ(sd, vt.Thing.Position, vt.Thing.Height, vt.Info.AbsoluteZ, vt.Info.Hangs)));
}
}