Skip to content

Commit 8ade1af

Browse files
committed
Handle Molang runtime evaluation failures
Translate checked Molang runtime exceptions into the plugin diagnostics path so animation evaluation can fail safely per frame.
1 parent a16a08f commit 8ade1af

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

src/main/java/com/ysm/modelengine/molang/MolangEvaluationContext.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import gg.moonflower.molangcompiler.api.MolangEnvironment;
88
import gg.moonflower.molangcompiler.api.MolangExpression;
99
import gg.moonflower.molangcompiler.api.MolangRuntime;
10+
import gg.moonflower.molangcompiler.api.exception.MolangRuntimeException;
1011
import org.bukkit.entity.Entity;
1112
import org.bukkit.entity.LivingEntity;
1213

@@ -86,7 +87,11 @@ float evaluate(IAnimationProperty property, MolangExpression expression) {
8687
}
8788

8889
MolangEnvironment environment = builder.create();
89-
return expression.get(environment);
90+
try {
91+
return expression.get(environment);
92+
} catch (MolangRuntimeException exception) {
93+
throw new IllegalStateException("Molang runtime evaluation failed", exception);
94+
}
9095
}
9196

9297
void warn(String key, String message) {

0 commit comments

Comments
 (0)