[스크래치와 함께하는 프로그래밍 첫걸음] Chapter 4_깜토에게 여행을!

2015/08/03
공유 레이어 열기/닫기
주소가 복사되었습니다.

[스크래치와 함께하는 프로그래밍 첫걸음] Chapter 4_깜토에게 여행을!

지난 시간에 새로 배운 ‘방송하기’ 제어 블록 활용법, 어떠셨나요? 여러 스프라이트에게 한 가지 메시지를 전달, 그 메시지를 받을 때 각각의 스프라이트가 말과 동작을 실행하는 역동적인 프로그래밍을 해봤는데요. 이번 시간엔 일명 ‘방송하기: 응용 심화 편’으로 배경과 스프라이트가 시시각각 변화되는 프로그래밍을 배워보겠습니다.

*프로그래밍을 배우기 위해선 먼저 스크래치 프로그램을 다운로드해야 합니다. 스크래치 프로그램 다운로드 방법은 프롤로그 편에 설명돼 있으니 아직 설치하지 않으신 분은 참조해주세요!

 

겁 많은 깜토에게 재미난 세상을 보여주자!

깜토는 소심한 성격으로 친구를 쉽게 사귀지 못합니다. 항상 꿈에서 친구들을 만나고 있죠. 스크래치는 깜토가 낯선 환경에서도 겁먹지 않도록 도와주려고 하는데요. 스크래치가 깜토를 위해 고안해낸 방법은 무엇일까요? 

만약 깜토가 여행을 간다면, 많은 친구들을 만나서 즐거울텐데... 문제는 깜토가 여행을 무서워한다는거야. 그렇다면 이번엔! 여러 친구들이 힘을 모아서 재미있는 여행을 보여주자! 첫 번째 친구는 바다 여행 두번째 친구는 사막여행, 세번째 친구는 우주여행. 이렇게 멋진 여행을 이어서 보여주면 깜토도 여행을 두려워하지 않을거야아하! 깜토에게 새로운 세상을 미리 보여주기로 했군요. 본격적인 여름 휴가철을 앞두고 스크래치가 깜토에게 제안한 여행지 세 곳, 함께 떠나볼까요? 

 

-새로운 스프라이트 가져오기

스크래치가 깜토에게 보여주고 싶은 여행지는 바다∙사막∙우주입니다. 먼저 여행지 세 곳을 배경 스프라이트로 등록해보겠습니다. ‘스프라이트∙무대’ 영역(오른쪽 아래)에서 별과 폴더 모양이 그려진 아이콘을 누른 후 바다∙사막∙우주를 차례대로 선택합니다.

스크래치는 여행지에서 만날 친구들이 있는데요. △바다는 꽃게 △사막은 여우 △우주는 용(龍)이 각각 그 주인공입니다. 꽃게∙여우∙용도 배경 스프라이트를 선택했던 방법과 동일하게 스프라이트로 등록해주세요. 

스크래치는 여행지에서 만날 친구들이 있는데요. △바다는 꽃게 △사막은 여우 △우주는 용(龍)이 각각 그 주인공입니다. 꽃게∙여우∙용도 배경 스프라이트를 선택했던 방법과 동일하게 스프라이트로 등록해주세요. 

다음은 스크래치가 각 여행지를 거치며 친구들을 만나는 상황을 프로그래밍해볼 건데요. 그 전에 바다 여행을 맡은 친구는 여러 스프라이트 중 바다와 꽃게만 보이도록 해당 스프라이트를 누른 후 ‘보이기’를 클릭해주세요.

다음은 스크래치가 각 여행지를 거치며 친구들을 만나는 상황을 프로그래밍해볼 건데요. 그 전에 바다 여행을 맡은 친구는 여러 스프라이트 중 바다와 꽃게만 보이도록 해당 스프라이트를 누른 후 ‘보이기’를 클릭해주세요.

동일한 방법으로 사막 여행을 맡은 친구는 사막과 여우만, 우주 여행을 맡은 친구는 우주와 용만 보이도록 각각 선택해야 합니다. 여기까지 잘 따라오고 계시죠? 

동일한 방법으로 사막 여행을 맡은 친구는 사막과 여우만, 우주 여행을 맡은 친구는 우주와 용만 보이도록 각각 선택해야 합니다. 여기까지 잘 따라오고 계시죠? 

 

-여행지별 스크립트 만들기

자, 이제 각 여행지별로 스크립트를 만들어보겠습니다. 첫 번째 여행지는 바다인데요. 먼저 바다 배경 스프라이트를 눌러주세요. 그런 다음, 제어 버튼 중 ‘~받을 때’ 제어 블록을 눌러 메시지 이름을 지어줍니다.

사용자가 ‘~받을 때’ 제어 블록을 특정 이름으로 지정하면 이 제어 블록의 메시지를 받은 스프라이트의 행동도 제어할 수 있는데요.

사용자가 ‘~받을 때’ 제어 블록을 특정 이름으로 지정하면 이 제어 블록의 메시지를 받은 스프라이트의 행동도 제어할 수 있는데요. 예를 들어 바다 배경 스프라이트를 실행하고 스크립트에 ‘바다 숨기기 받을 때’라는 제어 블록 아래 ‘숨기기’ 형태 블록을 이어 붙이면 바다 배경이 화면에서 없어집니다.

동일한 방법으로 꽃게 스프라이트의 스크립트에도 ‘바다 숨기기 받을 때’ ‘바다 보이기 받을 때’ ‘꽃게 보이기 받을 때’ ‘꽃게 숨기기 받을 때’ 등의 제어 블록을 조립해주세요.

동일한 방법으로 꽃게 스프라이트의 스크립트에도 ‘바다 숨기기 받을 때’ ‘바다 보이기 받을 때’ ‘꽃게 보이기 받을 때’ ‘꽃게 숨기기 받을 때’ 등의 제어 블록을 조립해주세요. 꽃게 스프라이트를 실행한 후 ‘바다 숨기기 받을 때’ 제어 블록과 ‘숨기기’ 형태 블록을 조립하면 바다 배경이 사라질 때 꽃게 스프라이트도 함께 사라집니다.

스크래치는 여행지의 친구들과 이야기를 주고받을 예정인데요. 해당 스프라이트가 말을 하기 위해선 ‘~받을 때’ 제어 블록 생성 시 하나의 스프라이트를 두 개의 이름으로 구분해야 합니다

스크래치는 여행지의 친구들과 이야기를 주고받을 예정인데요. 해당 스프라이트가 말을 하기 위해선 ‘~받을 때’ 제어 블록 생성 시 하나의 스프라이트를 두 개의 이름으로 구분해야 합니다. 예를 들어 ‘꽃게 보이기 받을 때(스프라이트가 화면에 나타날 때)’와 ‘꽃게2 보이기 받을 때(스프라이트에 말풍선을 삽입할 때)’처럼요. 

사막과 여우 스프라이트, 우주와 용 스프라이트에도 동일하게 ‘~받을 때’ 제어 블록을 활용해 스크립트를 만들어줍니다.   

사막과 여우 스프라이트, 우주와 용 스프라이트에도 동일하게 ‘~받을 때’ 제어 블록을 활용해 스크립트를 만들어줍니다.    사막과 여우 스프라이트, 우주와 용 스프라이트에도 동일하게 ‘~받을 때’ 제어 블록을 활용해 스크립트를 만들어줍니다.   

 

-하나의 스크립트로 연결하기

여러 개의 스프라이트를 하나의 스크립트로 연결해보겠습니다. 먼저 바다∙사막∙우주 등을 여행할 스크래치 스프라이트를 선택해주세요. 이번엔 ‘방송하기’ 제어 블록을 적극 활용해볼 겁니다.

스크래치는 가장 먼저 ‘깃발이 클릭되었을 때’ 명령어를 스크립트 영역으로 끌어왔습니다.

스크래치는 가장 먼저 ‘깃발이 클릭되었을 때’ 명령어를 스크립트 영역으로 끌어왔습니다. 뒤이어 첫 여행지인 ‘꽃게 보이기 방송하기’와 ‘바다 보이기 방송하기’ 제어 블록을 조립했는데요. 이때 꽃게와 바다 스프라이트만 남도록 다른 스프라이트엔 ‘~숨기기 방송하기’ 제어 블록을 넣는 게 중요합니다. ‘~방송하기’ 제어 블록의 경우 여러 개의 스프라이트를 동시에 실행하므로 화면엔 꽃게와 바다만 남습니다.

스크래치가 친구들과 대화를 주고받을 수 있도록 “안녕!” “바다는 어때” 등의 말풍선 블록을 각 스프라이트 사이에 끼워줍니다.

스크래치가 친구들과 대화를 주고받을 수 있도록 “안녕!” “바다는 어때” 등의 말풍선 블록을 각 스프라이트 사이에 끼워줍니다. 이때 주의해야 점은 말풍선 블록 조립 시 ‘~방송하기’가 아닌 ‘~방송하고 기다리기’ 제어 블록을 넣어야 한다는 건데요. ‘~방송하기’ 제어 블록 삽입 시 여러 스프라이트의 동작이 동시다발적으로 진행되니 질문과 답변이 동시에 나오게 됩니다. 그러니 ‘~방송하고 기다리기’ 제어 블록을 활용, 스크래치와 친구들이 한마디씩 번갈아 가며 이야기할 수 있도록 해주세요.

이렇게 바다 배경 스프라이트부터 용 스프라이트까지 이어봤는데요. 과연 어떤 모습으로 완성됐을까요? 함께 보시죠.

이렇게 바다 배경 스프라이트부터 용 스프라이트까지 이어봤는데요. 과연 어떤 모습으로 완성됐을까요? 함께 보시죠.

스크래치는 바다∙사막∙우주를 여행하며 다양한 친구들을 만났네요. 이번 여름 휴가는 그야말로 흥미진진한 모험이었는데요. 스크래치가 프로그래밍한 여행 장면을 보고 깜토가 드디어 여행 결심을 했다고 합니다.

다음 편에선 깜토의 좌충우돌 여행기가 이어집니다. 겁 많은 깜토는 무사히 새 친구들을 사귈 수 있을까요? 여러분도 함께 지켜봐주세요.

삼성전자 뉴스룸의 직접 제작한 기사와 이미지는 누구나 자유롭게 사용하실 수 있습니다.
그러나 삼성전자 뉴스룸이 제공받은 일부 기사와 이미지는 사용에 제한이 있습니다.
<삼성전자 뉴스룸 콘텐츠 이용에 대한 안내 바로가기>

TOP