Files
cat/correct/2511_CAT_3_A.json

627 lines
17 KiB
JSON

{
"1-1": {
"type": "scene",
"ele": "$..objects[?(@.name=='동물원')]",
"point": 2,
"desc": "문제 1/들판(3)/[배경] 이름 설정/이름을 '동물원'으로 변경하기",
"sort": 11
},
"1-3": {
"type": "scene",
"ele": "$..objects[?(@.name=='코끼리')]",
"point": 2,
"desc": "문제 1/코끼리/[개체] 이름 설정 1/이름 변경 없음",
"sort": 13
},
"1-4": {
"type": "scene",
"ele": "$..objects[?(@.name=='사육사')]",
"point": 2,
"desc": "문제 1/프랑켄슈타인/[개체] 이름 설정 2/이름을 '사육사'로 변경하기",
"sort": 14
},
"1-5": {
"type": "scene",
"ele": "$..objects[?(@.name=='울타리')]",
"point": 2,
"desc": "문제 1/골대(3)/[개체] 이름 설정 3/이름을 '울타리'로 변경하기",
"sort": 15
},
"1-6": {
"type": "scene",
"ele": "$..objects[?(@.name=='사자')]",
"point": 2,
"desc": "문제 1/사자/[개체] 이름 설정 4/이름 변경 없음",
"sort": 16
},
"2-0": {
"type": "script",
"ele": "$.objects[?(@.name=~'코끼리')].script",
"blocks": [
{
"ele": "$[0][0].type",
"answer": "when_run_button_click",
"point": 2.09,
"desc": "문제 2/코끼리/시작/시작하기 버튼을 클릭했을 때"
},
{
"ele": [
"$[0][1].type",
"$[0][1].params[0].params[0]"
],
"answer": [
"set_scale_size",
"80"
],
"point": 2.09,
"desc": "문제 2/코끼리/[시작]의 세부 동작/크기를 '80' 으로 정하기",
"type": "list"
},
{
"ele": [
"$[0][2].type",
"$[0][2].params[0]"
],
"answer": [
"repeat_inf",
null
],
"point": 2.09,
"desc": "문제 2/코끼리/반복/계속 반복하기",
"type": "list"
},
{
"ele": [
"$[0][2].statements[0][0].type",
"$[0][2].statements[0][0].params[0].params[1].params[0]",
"$[0][2].statements[0][0].params[0].params[3].params[0]",
"$[0][2].statements[0][0].params[1].params[0]"
],
"answer": [
"locate_xy",
"-150",
"150",
"-80"
],
"point": 2.09,
"desc": "문제 2/코끼리/[반복]의 세부 동작 1/x: '-150 부터 150 사이의 무작위 수' y: '-80' 위치로 이동하기",
"type": "list"
},
{
"ele": [
"$[0][2].statements[0][1].type",
"$[0][2].statements[0][1].params[0].params[0]"
],
"answer": [
"wait_second",
"0.5"
],
"point": 2.09,
"desc": "문제 2/코끼리/[반복]의 세부 동작 2/'0.5' 초 기다리기",
"type": "list"
}
],
"sortBlock": [
"when_run_button_click"
],
"sort": 102
},
"3-0": {
"type": "script",
"ele": "$.objects[?(@.name=~'사육사|프랑켄슈타')].script",
"blocks": [
{
"ele": "$[0][0].type",
"answer": "when_run_button_click",
"point": 2.09,
"desc": "문제 2/사육사/시작/시작하기 버튼을 클릭했을 때"
},
{
"ele": [
"$[0][1].type",
"$[0][1].params[0].params[0]",
"$[0][1].params[1].params[0]"
],
"answer": [
"locate_xy",
"-50",
"80"
],
"point": 2.09,
"desc": "문제 2/사육사/[시작]의 세부 동작 1/x: '-50' y: '80' 위치로 이동하기",
"type": "list"
},
{
"ele": [
"$[0][2].type",
"$[0][2].params[0].params[0]"
],
"answer": [
"set_scale_size",
"70"
],
"point": 2.09,
"desc": "문제 2/사육사/[시작]의 세부 동작 2/크기를 '70' 으로 정하기",
"type": "list"
},
{
"ele": [
"$[0][3].type",
"$[0][3].params[0]"
],
"answer": [
"repeat_inf",
null
],
"point": 2.09,
"desc": "문제 2/사육사/반복/계속 반복하기",
"type": "list"
},
{
"ele": [
"$[0][3].statements[0][0].type",
"$[0][3].statements[0][0].params[0].type"
],
"answer": [
"_if",
"reach_something"
],
"point": 2.09,
"desc": "문제 2/사육사/만일 1/만일 '사자' 에 닿았는가? 라면",
"type": "list"
},
{
"ele": [
"$[0][3].statements[0][0].statements[0][0].type",
"$[0][3].statements[0][0].statements[0][0].params[0].params[0]"
],
"answer": [
"move_x",
"20"
],
"point": 2.09,
"desc": "문제 2/사육사/[만일 1]의 세부 동작/x 좌표를 '20' 만큼 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][3].statements[0][1].type",
"$[0][3].statements[0][1].params[0].type",
"$[0][3].statements[0][1].params[0].params[0].type",
"$[0][3].statements[0][1].params[0].params[1]",
"$[0][3].statements[0][1].params[0].params[2].params[0]"
],
"answer": [
"_if",
"boolean_basic_operator",
"coordinate_object",
"LESS",
null
],
"point": 2.09,
"desc": "문제 2/사육사/만일 2/만일 '사자 의 x 좌푯값' < '사육사 의 x 좌푯값' 이라면",
"type": "list"
},
{
"ele": [
"$[0][3].statements[0][1].statements[0][0].type",
"$[0][3].statements[0][1].statements[0][0].params[0].params[0]"
],
"answer": [
"move_x",
"-2"
],
"point": 2.09,
"desc": "문제 2/사육사/[만일 2]의 세부 동작/x 좌표를 '-2' 만큼 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][3].statements[0][2].type",
"$[0][3].statements[0][2].params[0].type",
"$[0][3].statements[0][2].params[0].params[0].type",
"$[0][3].statements[0][2].params[0].params[1]",
"$[0][3].statements[0][2].params[0].params[2].params[0]"
],
"answer": [
"_if",
"boolean_basic_operator",
"coordinate_object",
"GREATER",
null
],
"point": 2.09,
"desc": "문제 2/사육사/만일 3/만일 '사자 의 x 좌푯값' > '사육사 의 x 좌푯값' 이라면",
"type": "list"
},
{
"ele": [
"$[0][3].statements[0][2].statements[0][0].type",
"$[0][3].statements[0][2].statements[0][0].params[0].params[0]"
],
"answer": [
"move_x",
"2"
],
"point": 2.09,
"desc": "문제 2/사육사/[만일 3]의 세부 동작/x 좌표를 '2' 만큼 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][3].statements[0][3].type",
"$[0][3].statements[0][3].params[0].params[0]"
],
"answer": [
"wait_second",
"0.2"
],
"point": 2.09,
"desc": "문제 2/사육사/[반복]의 세부 동작/'0.2' 초 기다리기",
"type": "list"
}
],
"sortBlock": [
"when_run_button_click"
],
"sort": 107
},
"4-0": {
"type": "script",
"ele": "$.objects[?(@.name=~'울타리|골대')].script",
"blocks": [
{
"ele": "$[0][0].type",
"answer": "when_run_button_click",
"point": 2.09,
"desc": "문제 2/울타리/시작/시작하기 버튼을 클릭했을 때"
},
{
"ele": [
"$[0][1].type",
"$[0][1].params[0].params[0]",
"$[0][1].params[1].params[0]"
],
"answer": [
"locate_xy",
"20",
"-200"
],
"point": 2.09,
"desc": "문제 2/울타리/[시작]의 세부 동작 1/x: '20' y: '-200' 위치로 이동하기",
"type": "list"
},
{
"ele": [
"$[0][2].type",
"$[0][2].params[0].params[0]"
],
"answer": [
"rotate_absolute",
"90"
],
"point": 2.09,
"desc": "문제 2/울타리/[시작]의 세부 동작 2/방향을 '90°' 로 정하기",
"type": "list"
},
{
"ele": [
"$[0][3].type",
"$[0][3].params[0].params[0]"
],
"answer": [
"set_scale_size",
"330"
],
"point": 2.09,
"desc": "문제 2/울타리/[시작]의 세부 동작 3/크기를 '330' 으로 정하기",
"type": "list"
},
{
"ele": [
"$[0][4].type",
"$[0][4].params[0]"
],
"answer": [
"repeat_inf",
null
],
"point": 2.09,
"desc": "문제 2/울타리/반복/계속 반복하기",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][0].type",
"$[0][4].statements[0][0].params[0].type"
],
"answer": [
"_if",
"reach_something"
],
"point": 2.09,
"desc": "문제 2/울타리/만일/만일 '사자' 에 닿았는가? 라면",
"type": "list"
},
{
"ele": "$[0][4].statements[0][0].statements[0][0].params[0].params",
"answer": [
"사자가 탈출했다!"
],
"point": 2.09,
"desc": "문제 2/울타리/[만일]의 세부 동작 1/'사자가 탈출했다!' 를 '말하기'"
},
{
"ele": [
"$[0][4].statements[0][0].statements[0][1].type",
"$[0][4].statements[0][0].statements[0][1].params[0]"
],
"answer": [
"stop_object",
"all"
],
"point": 2.09,
"desc": "문제 2/울타리/[만일]의 세부 동작 2/'모든' 코드 멈추기",
"type": "list"
}
],
"sortBlock": [
"when_run_button_click"
],
"sort": 118
},
"5-0": {
"type": "script",
"ele": "$.objects[?(@.name=~'사자')].script",
"blocks": [
{
"ele": "$[0][0].type",
"answer": "when_run_button_click",
"point": 2.09,
"desc": "문제 2/사자/시작/시작하기 버튼을 클릭했을 때"
},
{
"ele": [
"$[0][1].type",
"$[0][1].params[0].params[0]",
"$[0][1].params[1].params[0]"
],
"answer": [
"locate_xy",
"100",
"80"
],
"point": 2.09,
"desc": "문제 2/사자/[시작]의 세부 동작 1/x: '100' y: '80' 위치로 이동하기",
"type": "list"
},
{
"ele": [
"$[0][2].type",
"$[0][2].params[0].params[0]"
],
"answer": [
"set_scale_size",
"80"
],
"point": 2.09,
"desc": "문제 2/사자/[시작]의 세부 동작 2/크기를 '80' 으로 정하기",
"type": "list"
},
{
"ele": [
"$[0][3].type",
"$[0][3].params[0].type"
],
"answer": [
"change_to_some_shape",
"get_pictures"
],
"point": 2.09,
"desc": "문제 2/사자/[시작]의 세부 동작 3/'사자_4' 모양으로 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][4].type",
"$[0][4].params[0]"
],
"answer": [
"repeat_inf",
null
],
"point": 2.09,
"desc": "문제 2/사자/반복/계속 반복하기",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][0].type",
"$[0][4].statements[0][0].params[0].type",
"$[0][4].statements[0][0].params[0].params[0]"
],
"answer": [
"_if",
"is_press_some_key",
"38"
],
"point": 2.09,
"desc": "문제 2/사자/만일 1/만일 '위쪽 화살표' 키가 눌러져 있는가? 라면",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][0].statements[0][0].type",
"$[0][4].statements[0][0].statements[0][0].params[0].params[0]"
],
"answer": [
"move_y",
"5"
],
"point": 2.09,
"desc": "문제 2/사자/[만일 1]의 세부 동작/y 좌표를 '5' 만큼 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][1].type",
"$[0][4].statements[0][1].params[0].type",
"$[0][4].statements[0][1].params[0].params[0]"
],
"answer": [
"_if",
"is_press_some_key",
"40"
],
"point": 2.09,
"desc": "문제 2/사자/만일 2/만일 '아래쪽 화살표' 키가 눌러져 있는가? 라면",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][1].statements[0][0].type",
"$[0][4].statements[0][1].statements[0][0].params[0].params[0]"
],
"answer": [
"move_y",
"-5"
],
"point": 2.09,
"desc": "문제 2/사자/[만일 2]의 세부 동작/y 좌표를 '-5' 만큼 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][2].type",
"$[0][4].statements[0][2].params[0].type",
"$[0][4].statements[0][2].params[0].params[0]"
],
"answer": [
"_if",
"is_press_some_key",
"37"
],
"point": 2.09,
"desc": "문제 2/사자/만일 3/만일 '왼쪽 화살표' 키가 눌러져 있는가? 라면",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][2].statements[0][0].type",
"$[0][4].statements[0][2].statements[0][0].params[0].params[0]"
],
"answer": [
"move_x",
"-5"
],
"point": 2.09,
"desc": "문제 2/사자/[만일 3]의 세부 동작/x 좌표를 '-5' 만큼 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][3].type",
"$[0][4].statements[0][3].params[0].type",
"$[0][4].statements[0][3].params[0].params[0]"
],
"answer": [
"_if",
"is_press_some_key",
"39"
],
"point": 2.09,
"desc": "문제 2/사자/만일 4/만일 '오른쪽 화살표' 키가 눌러져 있는가? 라면",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][3].statements[0][0].type",
"$[0][4].statements[0][3].statements[0][0].params[0].params[0]"
],
"answer": [
"move_x",
"5"
],
"point": 2.09,
"desc": "문제 2/사자/[만일 4]의 세부 동작/x 좌표를 '5' 만큼 바꾸기",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][4].type",
"$[0][4].statements[0][4].params[0].type"
],
"answer": [
"_if",
"reach_something"
],
"point": 2.09,
"desc": "문제 2/사자/만일 5/만일 '사육사' 에 닿았는가? 라면",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][4].statements[0][0].type",
"$[0][4].statements[0][4].statements[0][0].params[0].params[0]",
"$[0][4].statements[0][4].statements[0][0].params[1].params[0]"
],
"answer": [
"locate_xy",
"100",
"80"
],
"point": 2.09,
"desc": "문제 2/사자/[만일 5]의 세부 동작 1/'x: '100' y: '80' 위치로 이동하기",
"type": "list"
},
{
"ele": "$[0][4].statements[0][4].statements[0][1].params[*].params",
"answer": [
"다시 돌아가야겠군!",
"0.5"
],
"point": 2.09,
"desc": "문제 2/사자/[만일 5]의 세부 동작 2/'다시 돌아가야겠군!' 을 '0.5' 초 동안 '말하기'"
},
{
"ele": [
"$[0][4].statements[0][5].type",
"$[0][4].statements[0][5].params[0].type"
],
"answer": [
"_if",
"reach_something"
],
"point": 2.09,
"desc": "문제 2/사자/만일 6/만일 '코끼리' 에 닿았는가? 라면",
"type": "list"
},
{
"ele": [
"$[0][4].statements[0][5].statements[0][0].type",
"$[0][4].statements[0][5].statements[0][0].params[0].params[0]"
],
"answer": [
"move_y",
"30"
],
"point": 2.22,
"desc": "문제 2/사자/[만일 6]의 세부 동작 1/y 좌표를 '30' 만큼 바꾸기",
"type": "list"
},
{
"ele": "$[0][4].statements[0][5].statements[0][1].params[*].params",
"answer": [
"길이 막혔다!",
"0.5"
],
"point": 2.09,
"desc": "문제 2/사자/[만일 6]의 세부 동작 2/'길이 막혔다!' 를 '0.5' 초 동안 '말하기'"
}
],
"sortBlock": [
"when_run_button_click"
],
"sort": 126
}
}