diff --git a/ide/vscode/src/version.ts b/ide/vscode/src/version.ts index 3722eab2..ad637a90 100644 --- a/ide/vscode/src/version.ts +++ b/ide/vscode/src/version.ts @@ -1 +1 @@ -export const Version = "9.0.31"; +export const Version = "9.0.32"; diff --git a/packages/bedrock-diagnoser/src/diagnostics/behavior-pack/structure/diagnose.ts b/packages/bedrock-diagnoser/src/diagnostics/behavior-pack/structure/diagnose.ts index b29355cc..dd1b87ef 100644 --- a/packages/bedrock-diagnoser/src/diagnostics/behavior-pack/structure/diagnose.ts +++ b/packages/bedrock-diagnoser/src/diagnostics/behavior-pack/structure/diagnose.ts @@ -1,4 +1,5 @@ import { OffsetWord } from 'bc-minecraft-bedrock-shared'; +import { Text } from 'bc-minecraft-bedrock-project'; import { Errors } from '../..'; import { DiagnosticsBuilder } from '../../../types'; import { check_definition_value } from '../../definitions'; @@ -7,7 +8,7 @@ export function diagnose_structure_implementation( id: OffsetWord | string, diagnoser: DiagnosticsBuilder, ): boolean { - const strId = typeof id === 'string' ? id : id.text; + const strId = Text.UnQuote(typeof id === 'string' ? id : id.text); const data = diagnoser.context.getProjectData().projectData; diff --git a/packages/bedrock-diagnoser/test/lib/diagnostics/behavior-pack/structure.test.ts b/packages/bedrock-diagnoser/test/lib/diagnostics/behavior-pack/structure.test.ts index 723690d8..26bd98f6 100644 --- a/packages/bedrock-diagnoser/test/lib/diagnostics/behavior-pack/structure.test.ts +++ b/packages/bedrock-diagnoser/test/lib/diagnostics/behavior-pack/structure.test.ts @@ -48,6 +48,18 @@ describe("BehaviorPack", () => { diagnoser.expectEmpty(); }); + it("quoted structure name is looked up unquoted", () => { + data.behaviorPacks.packs[0].structures.set({ + id: "mystructure:house", + documentation: "", + location: { position: 0, uri: "" }, + }); + + diagnose_structure_implementation({ offset: 0, text: '"mystructure:house"' }, diagnoser); + + diagnoser.expectEmpty(); + }); + it("missing structure reports error", () => { diagnose_structure_implementation({ offset: 0, text: "puff:coin1" }, diagnoser);