forked from Open-CT/openct-tasks
84 lines
2.8 KiB
JavaScript
84 lines
2.8 KiB
JavaScript
function initTask(subTask) {
|
|
var cellSide = 60;
|
|
|
|
subTask.gridInfos = {
|
|
hideSaveOrLoad: true,
|
|
cellSide: cellSide,
|
|
actionDelay: 200,
|
|
itemTypes: {
|
|
green_robot: { img: "green_robot.png", side: 80, nbStates: 9, isObstacle: true, offsetX: -14, category: "robot", team: 0, zOrder: 2 },
|
|
paint: { img: "paint.png", side: cellSide, category: "paint", isPaint: true, isObstacle: false, hasColor: true, color: "gris", zOrder: 1 },
|
|
marker: { num: 2, img: "marker.png", side: cellSide, category: "marker", isObstacle: false, isMarker: true, zOrder: 0 }
|
|
},
|
|
maxInstructions: {easy: 10, medium: 10, hard: 18},
|
|
includeBlocks: {
|
|
groupByCategory: false,
|
|
generatedBlocks: {
|
|
robot: ["east", "north", "south", "paint", "markedCell"]
|
|
},
|
|
standardBlocks: {
|
|
includeAll: false,
|
|
wholeCategories: [],
|
|
singleBlocks: {
|
|
shared: ["controls_repeat", "controls_if"],
|
|
easy: [],
|
|
medium: [],
|
|
hard: ["controls_if_else"]
|
|
}
|
|
}
|
|
},
|
|
ignoreInvalidMoves: false,
|
|
checkEndEveryTurn: false,
|
|
checkEndCondition: robotEndConditions.checkMarkersPainted
|
|
};
|
|
|
|
subTask.data = {
|
|
easy: [
|
|
{
|
|
tiles: [
|
|
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
|
|
[1, 1, 1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1],
|
|
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
|
|
],
|
|
initItems: [
|
|
{ row: 1, col: 0, dir: 0, type: "green_robot" }
|
|
]
|
|
}
|
|
],
|
|
medium: [
|
|
{
|
|
tiles: [
|
|
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
|
|
[1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1],
|
|
[1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1],
|
|
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
|
|
],
|
|
initItems: [
|
|
{ row: 2, col: 0, dir: 0, type: "green_robot" }
|
|
]
|
|
}
|
|
],
|
|
hard: [
|
|
{
|
|
tiles: [
|
|
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
|
|
[1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1],
|
|
[1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1],
|
|
[1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1],
|
|
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
|
|
],
|
|
initItems: [
|
|
{ row: 2, col: 0, dir: 0, type: "green_robot" }
|
|
]
|
|
}
|
|
]
|
|
};
|
|
|
|
initBlocklySubTask(subTask);
|
|
displayHelper.thresholdEasy = 5000;
|
|
displayHelper.thresholdMedium = 10000;
|
|
}
|
|
|
|
initWrapper(initTask, ["easy", "medium", "hard"], null, true);
|
|
|