1008 lines
27 KiB
JSON
1008 lines
27 KiB
JSON
|
|
{
|
||
|
|
"1-1": {
|
||
|
|
"type": "scene",
|
||
|
|
"ele": "$..objects[?(@.name=='별이 빛나는 숲')]",
|
||
|
|
"point": 1.5,
|
||
|
|
"desc": "문제 1/장면 1/[배경] 이름 설정 1/이름 변경 없음",
|
||
|
|
"sort": 11
|
||
|
|
},
|
||
|
|
"1-2": {
|
||
|
|
"type": "scene",
|
||
|
|
"ele": "$..objects[?(@.name=='우주')]",
|
||
|
|
"point": 1.7,
|
||
|
|
"desc": "문제 1/장면 2/[배경] 이름 설정 2/이름을 '우주'로 변경하기",
|
||
|
|
"sort": 12
|
||
|
|
},
|
||
|
|
"1-3": {
|
||
|
|
"type": "scene",
|
||
|
|
"ele": "$..objects[?(@.name=='번개')]",
|
||
|
|
"point": 1.7,
|
||
|
|
"desc": "문제 1/번개(1)/[개체] 이름 설정 1/이름을 '번개'로 변경하기",
|
||
|
|
"sort": 13
|
||
|
|
},
|
||
|
|
"1-4": {
|
||
|
|
"type": "scene",
|
||
|
|
"ele": "$..objects[?(@.name=='별')]",
|
||
|
|
"point": 1.7,
|
||
|
|
"desc": "문제 1/큰별(빨강)/[개체] 이름 설정 2/이름을 '별'로 변경하기",
|
||
|
|
"sort": 14
|
||
|
|
},
|
||
|
|
"1-5": {
|
||
|
|
"type": "scene",
|
||
|
|
"ele": "$..objects[?(@.name=='공')]",
|
||
|
|
"point": 1.7,
|
||
|
|
"desc": "문제 1/신호/[개체] 이름 설정 3/이름을 '공'으로 변경하기",
|
||
|
|
"sort": 15
|
||
|
|
},
|
||
|
|
"1-6": {
|
||
|
|
"type": "scene",
|
||
|
|
"ele": "$..objects[?(@.name=='막대')]",
|
||
|
|
"point": 1.7,
|
||
|
|
"desc": "문제 1/진행 상태 바/[개체] 이름 설정 4/이름을 '막대'로 변경하기",
|
||
|
|
"sort": 16
|
||
|
|
},
|
||
|
|
"1-0": {
|
||
|
|
"ele": "$.messages[?(@.name=='게임시작')]",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/신호/'게임시작' 신호 만들기",
|
||
|
|
"type": "scene",
|
||
|
|
"sort": 101
|
||
|
|
},
|
||
|
|
"2-0": {
|
||
|
|
"ele": "$.messages[?(@.name=='미션성공')]",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/신호/'미션성공' 신호 만들기",
|
||
|
|
"type": "scene",
|
||
|
|
"sort": 102
|
||
|
|
},
|
||
|
|
"3-0": {
|
||
|
|
"ele": "$.variables[?(@.name=='점수')]",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/변수/'점수' 변수 만들기",
|
||
|
|
"type": "scene",
|
||
|
|
"sort": 102
|
||
|
|
},
|
||
|
|
"4-0": {
|
||
|
|
"type": "script",
|
||
|
|
"ele": "$.objects[?(@.name=~'번개')].script",
|
||
|
|
"blocks": [
|
||
|
|
{
|
||
|
|
"ele": "$[0][0].type",
|
||
|
|
"answer": "when_run_button_click",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/시작/시작하기 버튼을 클릭했을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][1].type",
|
||
|
|
"$[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"set_scale_size",
|
||
|
|
30
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[시작]의 세부 동작 1/크기를 '30' 으로 정하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][2].type",
|
||
|
|
"$[0][2].params[0].params[0]",
|
||
|
|
"$[0][2].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"locate_xy",
|
||
|
|
"-205",
|
||
|
|
105
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[시작]의 세부 동작 2/x: '-205' y: '105' 위치로 이동하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[0][3].type",
|
||
|
|
"answer": "hide",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[시작]의 세부 동작 3/모양 숨기기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[1][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/신호/'게임시작' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].type",
|
||
|
|
"$[1][1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_inf",
|
||
|
|
null
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/반복/계속 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].type",
|
||
|
|
"$[1][1].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_basic",
|
||
|
|
3
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/반복/'3' 번 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].statements[0][0].type",
|
||
|
|
"$[1][1].statements[0][0].statements[0][0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"create_clone",
|
||
|
|
"self"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[반복]의 세부 동작 1/'자신' 의 복제본 만들기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][1].type",
|
||
|
|
"$[1][1].statements[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"wait_second",
|
||
|
|
3
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/반복/'3' 초 기다리기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][0].type",
|
||
|
|
"answer": "when_clone_start",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/복제본/복제본이 처음 생성되었을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][1].type",
|
||
|
|
"$[2][1].params[0].params[1].params[0]",
|
||
|
|
"$[2][1].params[0].params[3].params[0]",
|
||
|
|
"$[2][1].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"locate_xy",
|
||
|
|
"-220",
|
||
|
|
220,
|
||
|
|
150
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[복제본]의 세부 동작1/x: '-220 부터 220 사이의 무작위 수' y: '150' 위치로 이동하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][2].type",
|
||
|
|
"answer": "show",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[복제본]의 세부 동작2/모양 보이기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].type",
|
||
|
|
"$[2][3].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_inf",
|
||
|
|
null
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/반복/계속 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].statements[0][0].type",
|
||
|
|
"$[2][3].statements[0][0].params[0].params[1].params[0]",
|
||
|
|
"$[2][3].statements[0][0].params[0].params[3].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"move_y",
|
||
|
|
"-1",
|
||
|
|
"-2"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[반복]의 세부 동작 1/y 좌표를 '-1 부터 -2 사이의 무작위 수' 만큼 바꾸기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].statements[0][1].type",
|
||
|
|
"$[2][3].statements[0][1].params[0].type"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"_if",
|
||
|
|
"reach_something"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/만일/만일 '공' 에 닿았는가? 라면",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].statements[0][1].statements[0][0].type",
|
||
|
|
"$[2][3].statements[0][1].statements[0][0].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"change_variable",
|
||
|
|
"-2"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[만일]의 세부 동작 1/'점수' 에 '-2' 만큼 더하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].statements[0][1].statements[0][1].type",
|
||
|
|
"$[2][3].statements[0][1].statements[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"wait_second",
|
||
|
|
0.1
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[만일]의 세부 동작 2/'0.1' 초 기다리기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][3].statements[0][1].statements[0][2].type",
|
||
|
|
"answer": "delete_clone",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[만일]의 세부 동작 3/이 복제본 삭제하기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[3][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/신호/'미션성공' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[3][1].type",
|
||
|
|
"$[3][1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"stop_object",
|
||
|
|
"otherThread"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/번개/[신호]의 세부 동작 1/'자신의 다른' 코드 멈추기",
|
||
|
|
"type": "list"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"sort": 106
|
||
|
|
},
|
||
|
|
"5-0": {
|
||
|
|
"type": "script",
|
||
|
|
"ele": "$.objects[?(@.name=~'별')].script",
|
||
|
|
"blocks": [
|
||
|
|
{
|
||
|
|
"ele": "$[0][0].type",
|
||
|
|
"answer": "when_run_button_click",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/시작/시작하기 버튼을 클릭했을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][1].type",
|
||
|
|
"$[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"set_scale_size",
|
||
|
|
"10"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[시작]의 세부 동작 1/크기를 '10' 으로 정하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][2].type",
|
||
|
|
"$[0][2].params[0].params[0]",
|
||
|
|
"$[0][2].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"locate_xy",
|
||
|
|
"-205",
|
||
|
|
"105"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[시작]의 세부 동작 2/x: '-205' y: '105' 위치로 이동하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[0][3].type",
|
||
|
|
"answer": "hide",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[시작]의 세부 동작 3/모양 숨기기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[1][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/신호/'게임시작' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].type",
|
||
|
|
"$[1][1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_inf",
|
||
|
|
null
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/반복/계속 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].type",
|
||
|
|
"$[1][1].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_basic",
|
||
|
|
"3"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/반복/'3' 번 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].statements[0][0].type",
|
||
|
|
"$[1][1].statements[0][0].statements[0][0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"create_clone",
|
||
|
|
"self"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[반복]의 세부 동작 1/'자신' 의 복제본 만들기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][1].type",
|
||
|
|
"$[1][1].statements[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"wait_second",
|
||
|
|
"3"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/반복/'3' 초 기다리기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][0].type",
|
||
|
|
"answer": "when_clone_start",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/복제본/복제본이 처음 생성되었을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][1].type",
|
||
|
|
"$[2][1].params[0].params[1].params[0]",
|
||
|
|
"$[2][1].params[0].params[3].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"set_scale_size",
|
||
|
|
"10",
|
||
|
|
"40"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[복제본]의 세부 동작1/크기를 '10 부터 40 사이의 무작위 수' 로 정하기 ",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][2].type",
|
||
|
|
"$[2][2].params[0].params[1].params[0]",
|
||
|
|
"$[2][2].params[0].params[3].params[0]",
|
||
|
|
"$[2][2].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"locate_xy",
|
||
|
|
"-220",
|
||
|
|
"220",
|
||
|
|
"150"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[복제본]의 세부 동작2/x: '-220부터 220 사이의 무작위 수' y: '150' 위치로 이동하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][3].type",
|
||
|
|
"answer": "show",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[복제본]의 세부 동작3/모양 보이기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][4].type",
|
||
|
|
"$[2][4].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_inf",
|
||
|
|
null
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/반복/계속 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][4].statements[0][0].type",
|
||
|
|
"$[2][4].statements[0][0].params[0].params[1].params[0]",
|
||
|
|
"$[2][4].statements[0][0].params[0].params[3].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"move_y",
|
||
|
|
"-1",
|
||
|
|
"-2"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[반복]의 세부 동작 1/y 좌표를 '-1 부터 -2 사이의 무작위 수' 만큼 바꾸기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][4].statements[0][1].type",
|
||
|
|
"$[2][4].statements[0][1].params[0].type"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"_if",
|
||
|
|
"reach_something"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/만일/만일 '공' 에 닿았는가? 라면",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][4].statements[0][1].statements[0][0].type",
|
||
|
|
"$[2][4].statements[0][1].statements[0][0].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"change_variable",
|
||
|
|
"2"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[만일]의 세부 동작 1/'점수' 에 '2' 만큼 더하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][4].statements[0][1].statements[0][1].type",
|
||
|
|
"$[2][4].statements[0][1].statements[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"wait_second",
|
||
|
|
"0.1"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[만일]의 세부 동작 2/'0.1' 초 기다리기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][4].statements[0][1].statements[0][2].type",
|
||
|
|
"answer": "delete_clone",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[만일]의 세부 동작 3/이 복제본 삭제하기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][4].statements[0][2].type",
|
||
|
|
"$[2][4].statements[0][2].params[0].type",
|
||
|
|
"$[2][4].statements[0][2].params[0].params[0].type",
|
||
|
|
"$[2][4].statements[0][2].params[0].params[1]",
|
||
|
|
"$[2][4].statements[0][2].params[0].params[2].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"_if",
|
||
|
|
"boolean_basic_operator",
|
||
|
|
"get_variable",
|
||
|
|
"GREATER_OR_EQUAL",
|
||
|
|
"10"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/만일/만일 '점수' 값 ≥ '10' 이라면",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][4].statements[0][2].statements[0][0].type",
|
||
|
|
"answer": "message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/신호/'미션성공' 신호 보내기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[3][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/신호/'미션성공' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[3][1].type",
|
||
|
|
"$[3][1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"stop_object",
|
||
|
|
"otherThread"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/별/[신호]의 세부 동작 1/'자신의 다른' 코드 멈추기",
|
||
|
|
"type": "list"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"sort": 125
|
||
|
|
},
|
||
|
|
"6-0": {
|
||
|
|
"type": "script",
|
||
|
|
"ele": "$.objects[?(@.name=~'공|신')].script",
|
||
|
|
"blocks": [
|
||
|
|
{
|
||
|
|
"ele": "$[0][0].type",
|
||
|
|
"answer": "when_run_button_click",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/시작/시작하기 버튼을 클릭했을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][1].type",
|
||
|
|
"$[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"set_scale_size",
|
||
|
|
"15"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[시작]의 세부 동작 1/크기를 '15' 로 정하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][2].type",
|
||
|
|
"$[0][2].params[0].params[0]",
|
||
|
|
"$[0][2].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"locate_xy",
|
||
|
|
"0",
|
||
|
|
"0"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[시작]의 세부 동작 2/x: '0' y: '0' 위치로 이동하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[0][3].type",
|
||
|
|
"answer": "hide",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[시작]의 세부 동작 3/모양 숨기기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[1][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/신호/'게임시작' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].type",
|
||
|
|
"$[1][1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_inf",
|
||
|
|
null
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/반복/계속 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].type",
|
||
|
|
"$[1][1].statements[0][0].params[0].type",
|
||
|
|
"$[1][1].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"_if",
|
||
|
|
"is_press_some_key",
|
||
|
|
"32"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/만일/만일 '스페이스' 키가 눌러져 있는가? 라면",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].statements[0][0].type",
|
||
|
|
"$[1][1].statements[0][0].statements[0][0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"create_clone",
|
||
|
|
"self"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[만일]의 세부 동작 1/'자신' 의 복제본 만들기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].statements[0][1].type",
|
||
|
|
"$[1][1].statements[0][0].statements[0][1].params[0]",
|
||
|
|
"$[1][1].statements[0][0].statements[0][1].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"add_effect_amount",
|
||
|
|
"color",
|
||
|
|
"10"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[만일]의 세부 동작 2/'색깔' 효과를 '10' 만큼 주기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].statements[0][0].statements[0][2].type",
|
||
|
|
"$[1][1].statements[0][0].statements[0][2].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"wait_second",
|
||
|
|
"0.1"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[만일]의 세부 동작 3/'0.1' 초 기다리기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][0].type",
|
||
|
|
"answer": "when_clone_start",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/복제본/복제본이 처음 생성되었을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][1].type",
|
||
|
|
"answer": "locate",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[복제본]의 세부 동작1/'막대' 위치로 이동하기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][2].type",
|
||
|
|
"answer": "show",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[복제본]의 세부 동작2/모양 보이기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].type",
|
||
|
|
"$[2][3].params[0].params[0].params[3]",
|
||
|
|
"$[2][3].params[0].params[1]",
|
||
|
|
"$[2][3].params[0].params[2].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_while_true",
|
||
|
|
null,
|
||
|
|
"wall_up",
|
||
|
|
null
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/반복/'위쪽 벽' 에 닿았는가? '이 될 때까지' 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].statements[0][0].type",
|
||
|
|
"$[2][3].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"move_y",
|
||
|
|
10
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[반복]의 세부 동작 1/y 좌표를 '10' 만큼 바꾸기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].statements[0][1].type",
|
||
|
|
"$[2][3].statements[0][1].params[0].type"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"_if",
|
||
|
|
"reach_something"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/만일/만일 '별' 에 닿았는가? 라면",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][3].statements[0][1].statements[0][0].type",
|
||
|
|
"$[2][3].statements[0][1].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"wait_second",
|
||
|
|
"0.1"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[만일]의 세부 동작 1/'0.1' 초 기다리기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][3].statements[0][1].statements[0][1].type",
|
||
|
|
"answer": "delete_clone",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[만일]의 세부 동작 2/이 복제본 삭제하기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][4].type",
|
||
|
|
"answer": "delete_clone",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/복제본/이 복제본 삭제하기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[3][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/신호/'미션성공' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[3][1].type",
|
||
|
|
"$[3][1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"stop_object",
|
||
|
|
"otherThread"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/공/[신호]의 세부 동작/'자신의 다른' 코드 멈추기",
|
||
|
|
"type": "list"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"sort": 148
|
||
|
|
},
|
||
|
|
"7-0": {
|
||
|
|
"type": "script",
|
||
|
|
"ele": "$.objects[?(@.name=~'막대|진행 상태 ')].script",
|
||
|
|
"blocks": [
|
||
|
|
{
|
||
|
|
"ele": "$[0][0].type",
|
||
|
|
"answer": "when_run_button_click",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/시작/시작하기 버튼을 클릭했을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][1].type",
|
||
|
|
"$[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"set_scale_size",
|
||
|
|
"60"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[시작]의 세부 동작 1/크기를 'h60' 으로 정하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[0][2].type",
|
||
|
|
"$[0][2].params[0].params[0]",
|
||
|
|
"$[0][2].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"locate_xy",
|
||
|
|
"0",
|
||
|
|
"-110"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[시작]의 세부 동작 2/x: '0' y: '-110' 위치로 이동하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[0][3].type",
|
||
|
|
"answer": "message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/신호/'게임시작' 신호 보내기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[1][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/신호/'게임시작' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].type",
|
||
|
|
"$[1][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"wait_second",
|
||
|
|
"0.3"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[신호]의 세부 동작 1/'0.3' 초 기다리기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][2].type",
|
||
|
|
"$[1][2].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"repeat_inf",
|
||
|
|
null
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/반복/계속 반복하기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][2].statements[0][0].type",
|
||
|
|
"$[1][2].statements[0][0].params[0].type",
|
||
|
|
"$[1][2].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"_if",
|
||
|
|
"is_press_some_key",
|
||
|
|
"37"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/만일/만일 '왼쪽 화살표' 키가 눌러져 있는가? 라면",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][2].statements[0][0].statements[0][0].type",
|
||
|
|
"$[1][2].statements[0][0].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"move_x",
|
||
|
|
"-10"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[만일]의 세부 동작 1/x 좌표를 '-10' 만큼 바꾸기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][2].statements[0][1].type",
|
||
|
|
"$[1][2].statements[0][1].params[0].type",
|
||
|
|
"$[1][2].statements[0][1].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"_if",
|
||
|
|
"is_press_some_key",
|
||
|
|
"39"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/만일/만일 '오른쪽 화살표' 키가 눌러져 있는가? 라면",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][2].statements[0][1].statements[0][0].type",
|
||
|
|
"$[1][2].statements[0][1].statements[0][0].params[0].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"move_x",
|
||
|
|
"10"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[만일2]의 세부 동작 1/x 좌표를 '10' 만큼 바꾸기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][0].type",
|
||
|
|
"answer": "when_message_cast",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/신호/'미션성공' 신호를 받았을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[2][1].type",
|
||
|
|
"$[2][1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"stop_object",
|
||
|
|
"otherThread"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[신호]의 세부 동작 1/'자신의 다른' 코드 멈추기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][2].params[*].params",
|
||
|
|
"answer": [
|
||
|
|
"미션성공!",
|
||
|
|
"2"
|
||
|
|
],
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[신호]의 세부 동작 1/'미션성공!' 을 '2' 초 동안 '말하기'"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[2][3].type",
|
||
|
|
"answer": "start_neighbor_scene",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/막대/[신호]의 세부 동작 1/'다음' 장면 시작하기"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"sort": 168
|
||
|
|
},
|
||
|
|
"8-0": {
|
||
|
|
"type": "script",
|
||
|
|
"ele": "$.objects[?(@.name=~'우주|장면 ')].script",
|
||
|
|
"blocks": [
|
||
|
|
{
|
||
|
|
"ele": "$[0][0].type",
|
||
|
|
"answer": "when_scene_start",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/우주/장면 2/장면이 시작되었을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[0][1].type",
|
||
|
|
"answer": "hide_variable",
|
||
|
|
"point": 0.95,
|
||
|
|
"desc": "문제 2/우주/[장면 2]의 세부 동작 1/변수 '점수' 숨기기"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[1][0].type",
|
||
|
|
"answer": "when_object_click",
|
||
|
|
"point": 2.5,
|
||
|
|
"desc": "문제 3/우주/오브젝트/오브젝트를 클릭했을 때"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": [
|
||
|
|
"$[1][1].type",
|
||
|
|
"$[1][1].params[0]",
|
||
|
|
"$[1][1].params[1].params[0]"
|
||
|
|
],
|
||
|
|
"answer": [
|
||
|
|
"add_effect_amount",
|
||
|
|
"color",
|
||
|
|
30
|
||
|
|
],
|
||
|
|
"point": 2.5,
|
||
|
|
"desc": "문제 3/우주/[오브젝트]의 세부 동작 1/'색깔' 효과를 '30' 만큼 주기",
|
||
|
|
"type": "list"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[1][2].params[*].params",
|
||
|
|
"answer": [
|
||
|
|
"다시시작!",
|
||
|
|
2
|
||
|
|
],
|
||
|
|
"point": 2.5,
|
||
|
|
"desc": "문제 3/우주/[오브젝트]의 세부 동작 2/'다시시작!' 을 '2' 초 동안 '말하기'"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ele": "$[1][3].type",
|
||
|
|
"answer": "restart_project",
|
||
|
|
"point": 2.5,
|
||
|
|
"desc": "문제 3/우주/[오브젝트]의 세부 동작 3/처음부터 다시 실행하기"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"sort": 183
|
||
|
|
}
|
||
|
|
}
|