diff --git a/Source/Plugins/3DFloorMode/Controls/ThreeDFloorControl.cs b/Source/Plugins/3DFloorMode/Controls/ThreeDFloorControl.cs index 29c6970ff52262ab76df56745fcd04faac69d835..565db1cf348f862e303c058255f8c2e84a7029b3 100644 --- a/Source/Plugins/3DFloorMode/Controls/ThreeDFloorControl.cs +++ b/Source/Plugins/3DFloorMode/Controls/ThreeDFloorControl.cs @@ -131,6 +131,11 @@ namespace CodeImp.DoomBuilder.ThreeDFloorMode alphaArgument.SetValue(ctrl.threeDFloor.Alpha); sectorBrightness.Text = ctrl.threeDFloor.Brightness.ToString(); + threeDFloor.FloorSlope = ctrl.ThreeDFloor.FloorSlope; + threeDFloor.FloorSlopeOffset = ctrl.ThreeDFloor.FloorSlopeOffset; + threeDFloor.CeilingSlope = ctrl.ThreeDFloor.CeilingSlope; + threeDFloor.CeilingSlopeOffset = ctrl.ThreeDFloor.CeilingSlopeOffset; + for (int i = 0; i < checkedListBoxSectors.Items.Count; i++) checkedListBoxSectors.SetItemChecked(i, ctrl.checkedListBoxSectors.GetItemChecked(i)); } diff --git a/Source/Plugins/3DFloorMode/ThreeDFloor.cs b/Source/Plugins/3DFloorMode/ThreeDFloor.cs index 10ecad792123585c6ee34db14eab45f3dc7a6cfa..c29e1f33a0921ea4e9e7f153ad8af807f56f69b9 100644 --- a/Source/Plugins/3DFloorMode/ThreeDFloor.cs +++ b/Source/Plugins/3DFloorMode/ThreeDFloor.cs @@ -42,6 +42,10 @@ namespace CodeImp.DoomBuilder.ThreeDFloorMode private string bordertexture; private string topflat; private string bottomflat; + private Vector3D floorslope; + private float floorslopeoffset; + private Vector3D ceilingslope; + private float ceilingslopeoffset; private int type; private int flags; private int alpha; @@ -72,6 +76,10 @@ namespace CodeImp.DoomBuilder.ThreeDFloorMode public bool Rebuild { get { return rebuild; } set { rebuild = value; } } public int UDMFTag { get { return udmftag; } set { udmftag = value; } } public List<int> Tags { get { return tags; } set { tags = value; } } + public Vector3D FloorSlope { get { return floorslope; } set { floorslope = value; } } + public float FloorSlopeOffset { get { return floorslopeoffset; } set { floorslopeoffset = value; } } + public Vector3D CeilingSlope { get { return ceilingslope; } set { ceilingslope = value; } } + public float CeilingSlopeOffset { get { return ceilingslopeoffset; } set { ceilingslopeoffset = value; } } public ThreeDFloor() { @@ -85,7 +93,11 @@ namespace CodeImp.DoomBuilder.ThreeDFloorMode type = 1; flags = 0; tags = new List<int>(); - + floorslope = new Vector3D(0.0f, 0.0f, 1.0f); + floorslopeoffset = 0.0f; + ceilingslope = new Vector3D(0.0f, 0.0f, 1.0f); + ceilingslopeoffset = 0.0f; + alpha = 255; } @@ -102,6 +114,10 @@ namespace CodeImp.DoomBuilder.ThreeDFloorMode bottomheight = sector.FloorHeight; brightness = sector.Brightness; tags = new List<int>(); + floorslope = sector.FloorSlope; + floorslopeoffset = sector.FloorSlopeOffset; + ceilingslope = sector.CeilSlope; + ceilingslopeoffset = sector.CeilSlopeOffset; foreach (Sidedef sd in sector.Sidedefs) { @@ -183,6 +199,10 @@ namespace CodeImp.DoomBuilder.ThreeDFloorMode sector.SetFloorTexture(bottomflat); sector.Brightness = brightness; sector.Tags = tags; + sector.FloorSlope = floorslope; + sector.FloorSlopeOffset = floorslopeoffset; + sector.CeilSlope = ceilingslope; + sector.CeilSlopeOffset = ceilingslopeoffset; foreach (Sidedef sd in sector.Sidedefs) { @@ -219,6 +239,10 @@ namespace CodeImp.DoomBuilder.ThreeDFloorMode sector.CeilHeight = topheight; sector.SetFloorTexture(bottomflat); sector.SetCeilTexture(topflat); + sector.FloorSlope = floorslope; + sector.FloorSlopeOffset = floorslopeoffset; + sector.CeilSlope = ceilingslope; + sector.CeilSlopeOffset = ceilingslopeoffset; foreach (Sidedef sd in sector.Sidedefs) {