construction tasks try catch loop

This commit is contained in:
Isadora White 2025-03-23 15:39:50 -05:00
parent b965123f74
commit 354e1f754a

View file

@ -47,13 +47,19 @@ export function resetConstructionWorld(bot, blueprint) {
export function checkLevelBlueprint(agent, levelNum) {
const blueprint = agent.task.blueprint;
const bot = agent.bot;
const result = blueprint.checkLevel(bot, levelNum);
if (result.mismatches.length === 0) {
return `Level ${levelNum} is correct`;
} else {
let explanation = blueprint.explainLevelDifference(bot, levelNum);
return explanation;
try {
const result = blueprint.checkLevel(bot, levelNum);
if (result.mismatches.length === 0) {
return `Level ${levelNum} is correct`;
} else {
let explanation = blueprint.explainLevelDifference(bot, levelNum);
return explanation;
}
} catch (error) {
console.error('Error checking level blueprint:', error);
return `Error checking level ${levelNum}: ${error.message}`;
}
}
export function checkBlueprint(agent) {
@ -158,6 +164,9 @@ export class Blueprint {
}
checkLevel(bot, levelNum) {
const levelData = this.data.levels[levelNum];
if (!levelData) {
throw new Error(`Level ${levelNum} does not exist in the blueprint.`);
}
const startCoords = levelData.coordinates;
const placement = levelData.placement;
const mismatches = [];