diff --git a/assets/data/alphabet/bold.xml b/assets/data/alphabet/bold.xml
index b99a4032..40adf471 100644
--- a/assets/data/alphabet/bold.xml
+++ b/assets/data/alphabet/bold.xml
@@ -47,10 +47,32 @@
character-eight
character-nine
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/assets/data/alphabet/normal.xml b/assets/data/alphabet/normal.xml
index a82323fe..64860e27 100644
--- a/assets/data/alphabet/normal.xml
+++ b/assets/data/alphabet/normal.xml
@@ -11,19 +11,57 @@
p lowercase
q lowercase
y lowercase
- dollarsign
amp
right arrow
left arrow
down arrow
up arrow
+ comma
comma
comma
period
+ exclamation point
question mark
+ forward slash
start parentheses
-
^
~
=
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/source/funkin/menus/ui/Alphabet.hx b/source/funkin/menus/ui/Alphabet.hx
index caf86c6a..c6611e4c 100644
--- a/source/funkin/menus/ui/Alphabet.hx
+++ b/source/funkin/menus/ui/Alphabet.hx
@@ -113,6 +113,7 @@ enum abstract AlphabetRenderMode(ByteUInt) from ByteUInt to ByteUInt {
var MONOSPACE = 1;
}
+@:allow(funkin.editors.alphabet.AlphabetEditor)
class Alphabet extends FlxSprite {
public var effects:Array = [];
var __renderData:AlphabetRenderData;
@@ -461,6 +462,7 @@ class Alphabet extends FlxSprite {
if (data == null) {
failedLetters.push(char);
+ Logs.error('Character $char: Data not found.');
return null;
} else if (data.isDefault)
loaded[defaultsIndexOf(data)].push(char);
@@ -497,6 +499,8 @@ class Alphabet extends FlxSprite {
animation.addByPrefix(name, anim, fps);
if (!animation.exists(name)) {
failedLetters.push(char);
+ var traceIndex = (component.refIndex != null) ? 'Outline For Component Index ${component.refIndex}' : 'Component Index ${index - data.startIndex}';
+ Logs.error('Character $char: $traceIndex: Animation "$anim" not found.');
return null;
}
return animation.getByName(name);
@@ -568,7 +572,7 @@ class Alphabet extends FlxSprite {
var components:Array = [];
for (component in node.elementsNamed("component")) {
if(!component.exists("anim")) {
- Logs.error(" must have a anim attribute", "Alphabet");
+ Logs.error('Character $char: must have a anim attribute", "Alphabet');
return;
}
@@ -729,7 +733,7 @@ class Alphabet extends FlxSprite {
v[2] = [];
v;
}
- failedLetters = [];
+ failedLetters = [" "];
defaultAdvance = Std.parseFloat(xml.get("advance")).getDefaultFloat(40.0);
lineGap = Std.parseFloat(xml.get("lineGap")).getDefaultFloat(75.0);