From bc3bb0cfd0983cc2296cdf833f7cce7f25bb7d1a Mon Sep 17 00:00:00 2001 From: Xterionix <72647213+Xterionix@users.noreply.github.com> Date: Mon, 10 Feb 2025 20:53:46 +0500 Subject: [PATCH] Check when set_property tries to set a property that doesn't exist on the entity --- src/Lib/Diagnostics/BehaviorPack/Entity/properties.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/Lib/Diagnostics/BehaviorPack/Entity/properties.ts b/src/Lib/Diagnostics/BehaviorPack/Entity/properties.ts index 5736c54..32658b2 100644 --- a/src/Lib/Diagnostics/BehaviorPack/Entity/properties.ts +++ b/src/Lib/Diagnostics/BehaviorPack/Entity/properties.ts @@ -179,6 +179,17 @@ export function diagnose_entity_property_usage( parent: "events" | "filter", diagnoser: DiagnosticsBuilder ): void { + const names = definitions.map(def => def.name) + + if (!names.includes(name)) { + diagnoser.add( + `${parent}/${name}`, + `Entity property definition for "${name}" not found`, + DiagnosticSeverity.error, + "behaviorpack.entity.property.unknown_property" + ) + } + for (const def of definitions) { if (def.name === name) { check_entity_property_usage(def, name, value, parent, diagnoser);