Skip to content

Commit 706501a

Browse files
committed
inventory tag: don't warn on general text input (due to notes existing)
1 parent 027a12a commit 706501a

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

SharpDenizenTools/ScriptAnalysis/ScriptChecker.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -521,6 +521,9 @@ void warnPart(SingleTag.Part part, string key, string message)
521521
}
522522
}
523523

524+
/// <summary>Matcher for characters allowed in a simple note name.</summary>
525+
public static AsciiMatcher AllowedSimpleNoteName = new(AsciiMatcher.BothCaseLetters + AsciiMatcher.Digits + "_-");
526+
524527
/// <summary>Helper to check a single tag parameter.</summary>
525528
public void CheckTagParam(SingleTag.Part part, SingleTag.Part metaPart, string input, Action<SingleTag.Part, string, string> warnPart)
526529
{
@@ -545,7 +548,7 @@ public void CheckTagParam(SingleTag.Part part, SingleTag.Part metaPart, string i
545548
}
546549
break;
547550
case "<inventory>":
548-
if (!ExtraData.InventoryMatchers.Contains(input) && ContextValidatedGetScriptFor(input, "inventory") is null)
551+
if (!ExtraData.InventoryMatchers.Contains(input) && ContextValidatedGetScriptFor(input, "inventory") is null && !AllowedSimpleNoteName.IsOnlyMatches(input))
549552
{
550553
warnPart(metaPart, "invalid_tag_inventory", $"Tag part `{part.Text}` has parameter `{part.Parameter}` which has to be a valid Inventory, but is not.");
551554
}

0 commit comments

Comments
 (0)