From ba0d3b45cd2413d4cc9c30e7e92b17503100e59d Mon Sep 17 00:00:00 2001 From: Dramoor Date: Thu, 1 Jan 2026 14:06:49 +0000 Subject: [PATCH 1/2] Added in filters for Walls, Windows, Roofs, Surfaces, Water, Foliage. --- CentrED/Languages/LangEntry.cs | 7 +++++++ CentrED/Map/MapManager.cs | 10 +++++++++- CentrED/UI/Windows/FilterWindow.cs | 14 ++++++++++++++ 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/CentrED/Languages/LangEntry.cs b/CentrED/Languages/LangEntry.cs index 1efef427..d0603c19 100644 --- a/CentrED/Languages/LangEntry.cs +++ b/CentrED/Languages/LangEntry.cs @@ -282,4 +282,11 @@ public enum LangEntry EDGE_FALLOFF, FALLOFF_START, FALLOFF_START_TOOLTIP, + WALL, + SURFACE, + ROOF, + FOLIAGE, + WINDOW, + WATER, + } \ No newline at end of file diff --git a/CentrED/Map/MapManager.cs b/CentrED/Map/MapManager.cs index ef00c26c..b40f42bb 100644 --- a/CentrED/Map/MapManager.cs +++ b/CentrED/Map/MapManager.cs @@ -72,6 +72,12 @@ public Tool ActiveTool private readonly CentrEDClient Client; + public bool ShowWater = true; + public bool ShowWindow = true; + public bool ShowFoliage = true; + public bool ShowRoof = true; + public bool ShowWall = true; + public bool ShowSurface = true; public bool ShowLand = true; public bool ShowStatics = true; public bool ShowVirtualLayer = false; @@ -867,7 +873,9 @@ public bool CanDrawStatic(StaticObject so) // Outlands specific // if ((data.Flags & TileFlag.NoDraw) != 0) // return false; - + if((!ShowWall && data.IsWall) || (!ShowSurface && data.IsSurface) || (!ShowFoliage && data.IsFoliage) || (!ShowRoof && data.IsRoof) || (!ShowWindow && data.IsWindow) || (!ShowWater && data.IsWet)) + return false; + if (!ShowNoDraw) { switch (id) diff --git a/CentrED/UI/Windows/FilterWindow.cs b/CentrED/UI/Windows/FilterWindow.cs index bac1c8c1..e04b919c 100644 --- a/CentrED/UI/Windows/FilterWindow.cs +++ b/CentrED/UI/Windows/FilterWindow.cs @@ -65,6 +65,20 @@ protected override void InternalDraw() ImGui.Checkbox(LangManager.Get(OBJECTS), ref CEDGame.MapManager.ShowStatics); ImGui.SameLine(); ImGui.Checkbox(LangManager.Get(NODRAW), ref CEDGame.MapManager.ShowNoDraw); + + ImGui.Checkbox(LangManager.Get(WALL), ref CEDGame.MapManager.ShowWall); + ImGui.SameLine(); + ImGui.Checkbox(LangManager.Get(WINDOW), ref CEDGame.MapManager.ShowWindow); + ImGui.SameLine(); + ImGui.Checkbox(LangManager.Get(ROOF), ref CEDGame.MapManager.ShowRoof); + + ImGui.Checkbox(LangManager.Get(SURFACE), ref CEDGame.MapManager.ShowSurface); + ImGui.SameLine(); + ImGui.Checkbox(LangManager.Get(WATER), ref CEDGame.MapManager.ShowWater); + ImGui.SameLine(); + ImGui.Checkbox(LangManager.Get(FOLIAGE), ref CEDGame.MapManager.ShowFoliage); + + if (ImGui.BeginChild("Filters")) { if (ImGui.BeginTabBar("FiltersTabs")) From 907212a43db9cceab5f2090eb9541e4feb85e330 Mon Sep 17 00:00:00 2001 From: Dramoor Date: Thu, 1 Jan 2026 16:42:16 +0000 Subject: [PATCH 2/2] Add Stairs to the filter. --- CentrED/Languages/LangEntry.cs | 3 ++- CentrED/Map/MapManager.cs | 3 ++- CentrED/UI/Windows/FilterWindow.cs | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CentrED/Languages/LangEntry.cs b/CentrED/Languages/LangEntry.cs index d0603c19..f4895f8c 100644 --- a/CentrED/Languages/LangEntry.cs +++ b/CentrED/Languages/LangEntry.cs @@ -288,5 +288,6 @@ public enum LangEntry FOLIAGE, WINDOW, WATER, - + STAIRS, + } \ No newline at end of file diff --git a/CentrED/Map/MapManager.cs b/CentrED/Map/MapManager.cs index b40f42bb..1e0ad0c9 100644 --- a/CentrED/Map/MapManager.cs +++ b/CentrED/Map/MapManager.cs @@ -72,6 +72,7 @@ public Tool ActiveTool private readonly CentrEDClient Client; + public bool ShowStairs = true; public bool ShowWater = true; public bool ShowWindow = true; public bool ShowFoliage = true; @@ -873,7 +874,7 @@ public bool CanDrawStatic(StaticObject so) // Outlands specific // if ((data.Flags & TileFlag.NoDraw) != 0) // return false; - if((!ShowWall && data.IsWall) || (!ShowSurface && data.IsSurface) || (!ShowFoliage && data.IsFoliage) || (!ShowRoof && data.IsRoof) || (!ShowWindow && data.IsWindow) || (!ShowWater && data.IsWet)) + if((!ShowWall && data.IsWall) || (!ShowSurface && data.IsSurface) || (!ShowFoliage && data.IsFoliage) || (!ShowRoof && data.IsRoof) || (!ShowWindow && data.IsWindow) || (!ShowWater && data.IsWet) || (!ShowStairs && data.IsBridge) ) return false; if (!ShowNoDraw) diff --git a/CentrED/UI/Windows/FilterWindow.cs b/CentrED/UI/Windows/FilterWindow.cs index e04b919c..4c2a88c9 100644 --- a/CentrED/UI/Windows/FilterWindow.cs +++ b/CentrED/UI/Windows/FilterWindow.cs @@ -79,6 +79,8 @@ protected override void InternalDraw() ImGui.Checkbox(LangManager.Get(FOLIAGE), ref CEDGame.MapManager.ShowFoliage); + ImGui.Checkbox(LangManager.Get(STAIRS), ref CEDGame.MapManager.ShowStairs); + if (ImGui.BeginChild("Filters")) { if (ImGui.BeginTabBar("FiltersTabs"))