diff --git a/editor source/SPNATI Character Editor/Activities/SpellCheck.cs b/editor source/SPNATI Character Editor/Activities/SpellCheck.cs index d3ca455d2d36e4aea02bcda83cf24e2490ff11c0..8c8af88238afcfd2dd43ed136c3cfcee1ae12bb6 100644 --- a/editor source/SPNATI Character Editor/Activities/SpellCheck.cs +++ b/editor source/SPNATI Character Editor/Activities/SpellCheck.cs @@ -97,6 +97,20 @@ namespace SPNATI_Character_Editor.Activities if (!_spellchecker.CheckWord(word)) { int count = visitedWords.Get(word); + if (count == 0) + { + for (int i = 0; i < words.Length; i++) + { + if (words[i] == word) + { + break; + } + if (words[i].Contains(word)) + { + count++; + } + } + } count++; visitedWords[word] = count; int start = -1; diff --git a/editor source/SPNATI Character Editor/CharacterValidator.cs b/editor source/SPNATI Character Editor/CharacterValidator.cs index e213ddadbd5f1d9074e6a7df98c69b0e32a3c25b..66c344f6be3f88e3bbb33b7afdb933a7a0bf237b 100644 --- a/editor source/SPNATI Character Editor/CharacterValidator.cs +++ b/editor source/SPNATI Character Editor/CharacterValidator.cs @@ -772,6 +772,11 @@ namespace SPNATI_Character_Editor string relPath = fullPath.Substring(characterRoot.Length + 1); return relPath; } + else if (path.StartsWith("reskins")) + { + string relPath = Path.GetFileName(path); + return relPath; + } return path; } @@ -852,6 +857,7 @@ namespace SPNATI_Character_Editor foreach (Pose pose in skin.Poses) { + ValidatePose(character, pose, unusedImages); missingImages.Remove("custom:" + pose.Id); } diff --git a/tools/character_editor/Character Editor 4.0.zip b/tools/character_editor/Character Editor 4.0.zip index 757eb599fd980353cd8e699d3971797de1ee2077..d493a4dbf31fd53981d5b39cbb9b96348d98ab66 100644 Binary files a/tools/character_editor/Character Editor 4.0.zip and b/tools/character_editor/Character Editor 4.0.zip differ