From 38d2b14570cf38c60342c37e3154a96050b50a08 Mon Sep 17 00:00:00 2001 From: MaxED Date: Thu, 22 Jan 2015 20:34:27 +0000 Subject: [PATCH] Fixed, Script Editor: named scripts were not shown in the script navigator drop-down when current map was not in UDMF. --- Source/Core/Controls/ScriptDocumentTab.cs | 11 +---------- Source/Core/General/MapManager.cs | 17 ++++------------- 2 files changed, 5 insertions(+), 23 deletions(-) diff --git a/Source/Core/Controls/ScriptDocumentTab.cs b/Source/Core/Controls/ScriptDocumentTab.cs index 539d3277..a02e16b9 100644 --- a/Source/Core/Controls/ScriptDocumentTab.cs +++ b/Source/Core/Controls/ScriptDocumentTab.cs @@ -402,9 +402,6 @@ namespace CodeImp.DoomBuilder.Controls DecorateParserSE parser = new DecorateParserSE(); parser.Parse(stream, "DECORATE"); - - if (parser.Actors.Count == 0) return; - navigator.Items.AddRange(parser.Actors.ToArray()); } @@ -417,9 +414,6 @@ namespace CodeImp.DoomBuilder.Controls ModeldefParserSE parser = new ModeldefParserSE(); parser.Parse(stream, "MODELDEF"); - - if (parser.Models.Count == 0) return; - navigator.Items.AddRange(parser.Models.ToArray()); } @@ -432,10 +426,7 @@ namespace CodeImp.DoomBuilder.Controls AcsParserSE parser = new AcsParserSE(); parser.Parse(stream, "ACS"); - - if (parser.NamedScripts.Count == 0 && parser.NumberedScripts.Count == 0 && parser.Functions.Count == 0) return; - - if(General.Map.UDMF) navigator.Items.AddRange(parser.NamedScripts.ToArray()); + navigator.Items.AddRange(parser.NamedScripts.ToArray()); navigator.Items.AddRange(parser.NumberedScripts.ToArray()); navigator.Items.AddRange(parser.Functions.ToArray()); } diff --git a/Source/Core/General/MapManager.cs b/Source/Core/General/MapManager.cs index 76dfdebd..3defe4f1 100644 --- a/Source/Core/General/MapManager.cs +++ b/Source/Core/General/MapManager.cs @@ -1710,29 +1710,20 @@ namespace CodeImp.DoomBuilder MemoryStream stream = GetLumpData(maplumpinfo.Name); if (stream != null) { + // Get script names AcsParserSE parser = new AcsParserSE(); parser.OnInclude = UpdateScriptsFromLocation; parser.Parse(stream, "SCRIPTS", true, false); - if(parser.NamedScripts.Count > 0 && (FormatInterface is DoomMapSetIO || FormatInterface is HexenMapSetIO)) - { - List names = new List(); - foreach(ScriptItem item in parser.NamedScripts) - names.Add("'" + item.Name + "'"); - General.ErrorLogger.Add(ErrorType.Warning, "Current map format doesn't support named scripts! Following scripts will not work:" + string.Join(", ", names.ToArray())); - } - else - { - namedScripts.AddRange(parser.NamedScripts); - } - + // Add them to arrays + namedScripts.AddRange(parser.NamedScripts); numberedScripts.AddRange(parser.NumberedScripts); scriptincludes.AddRange(parser.Includes); } } } - //sort + // Sort script names namedScripts.Sort(ScriptItem.SortByName); numberedScripts.Sort(ScriptItem.SortByIndex); }