[스크래치와 함께하는 프로그래밍 첫걸음] Chapter 7_장애물 넘어 길 찾기!

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

[스크래치와 함께하는 프로그래밍 첫걸음] Chapter 7 장애물 넘어 길 찾기!

‘스크래치와 함께하는 프로그래밍 첫걸음’ 일곱 번째 시간입니다. 지난 시간엔 깜토가 스크래치네 집을 찾아가는 간단한 게임을 만들었는데요. 오늘은 새로운 기능 ‘변수’를 활용, 좀 더 복잡한 규칙을 가진 게임을 만들 겁니다. 준비 되셨나요?

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

 

달팽이보다 느린 깜토의 걸음, 빨라지게 하는 방법은?

스크래치가 만든 게임을 통해 숲 속 길 찾기에 성공한 깜토. 하지만 우물쭈물하는 버릇을 완전히 고치진 못한 모양입니다. 돌아가는 길에 다시 느려진 깜토의 걸음, 어떻게 해야 빨라지게 만들 수 있을까요?

"깜토야. 토끼들은 걸음이 빠르다던데, 너는 나랑 비슷하잖아. 혹시 귀가 큰 달팽이인 거야?" "아니, 나는..." 깜토 녀석, 다시 우물쭈물하고 있잖아... "어떻게 하면 깜토의 걸음을 절로 빨라지게 할 수 있을까?" 그래! 되돌아가는 길에는 깜짝 놀랄 동물이 숨어 있는 새로운 숲길로 가야겠어! 그것도 두 고개를 넘어야 하는 곳으로 말이야.

스크래치는 깜토를 위해 새로운 숲길을 만들어줄 생각입니다. 그것도 무서운 여우가 숨어 있는 숲길인데요. 여우를 피해 재빨리 숲길을 지나려면 깜토의 발걸음도 빨라지겠죠? 그럼 깜토를 위한 숲길 만들기, 지금부터 시작해볼게요.

 

– 배경과 스프라이트 등록하기

이번 시간에도 배경으로 사용될 그림을 직접 그려야 합니다. 두 고개를 넘어야 하니 배경을 두 개 그려주세요. 첫 번째 고개보다 두 번째 고개를 더 복잡하게 그려보겠습니다.

배경 두 개를 그려줍니다.

길을 찾을 깜토와 장애물 역할을 할 여우를 스프라이트로 각각 추가해주세요. 깜토는 삼성전자 주니어소프트웨어아카데미 홈페이지에서 다운로드할 수 있습니다. 이때 좌우 움직임을 고정해 뒤집히지 않도록 해주세요. 스프라이트 크기도 줄여주시고요. ‘Chapter 6_스크래치네 찾아가기!‘에서 배웠던 내용이죠? 불러온 스프라이트 이름은 각각 ‘깜토’와 ‘여우’로 바꿔줍니다.

1.깜토와 여우 스프라이트를 각각 불러온 후 2.좌우 움직임을 고정하고 3.스프라이트 크기를 줄여주세요

이번엔 도착 지점을 만들어볼 텐데요. 첫 번째 도착 지점인 바위는 스프라이트를 불러왔고, 두 번째 도착 지점인 나무는 직접 그려봤습니다. 먼저 바위 스프라이트를 불러온 다음, ‘모양’ 탭에서 새로운 그림을 그리면 되는데요. 꼭 나무가 아니어도 좋습니다. 도착 지점에서 만나고 싶은 게 있다면 마음껏 그려주세요!

도착 지점에 놓이면 좋을 것을 스프라이트로 불러오거나 직접 그려줍니다.

 

– ‘변수’ 기능 활용, 깜토 움직임 프로그래밍하기

깜토가 좀 더 복잡해진 숲길을 통과하기 위해선 ‘변수’ 기능이 필요합니다. 총 세 가지 변수를 만들 건데요. ‘단계’는 현재 깜토가 있는 곳이 몇 번째 고개인지 나타내는 변수이며 ‘속도’와 ‘방향’은 각각 깜토의 속도와 움직이는 방향을 나타내는 변수입니다.

변수를 만들 땐 반드시 ‘모든 스프라이트에 대해’ 항목에 표기해주세요!

변수를 만들 땐 반드시 ‘모든 스프라이트에 대해’ 항목에 표기해주세요.

이제 변수를 활용, 본격적으로 프로그래밍을 해볼까요? 게임 내용이 복잡해진 만큼 명령어 블록을 여러 개로 나눠 설명하겠습니다. 1번은 게임이 시작될 때 깜토의 위치와 방향을 정해주는 명령어입니다. 2번은 화살표 키를 눌렀을 때 선택한 방향으로 깜토가 움직이도록 해주는 명령어고요. 3번 명령어는 깜토가 벽에 닿았을 때 천천히 움직이도록 해줍니다.

이번 게임엔 호시탐탐 깜토를 노리는 여우가 등장하는데요. 4번은 여우와 관련된 명령어입니다. 깜토가 여우에게 잡히면 “여우다~ 다시 처음부터 시작”이라 외치며 시작 지점으로 돌아가게 해줍니다. 5번은 깜토가 첫 번째 고개의 도착 지점에 닿으면 다음 고개로 넘어가게 해주는 명령어고요.

게임 내용에 맞게 명령어 블록을 설정합니다.

명령어 블록이 다 만들어졌다면 번호 순서대로 블록을 쌓아주세요. 아래 이미지처럼요. 여기까진 잘 따라오고 계시죠?

명령어 블록이 다 만들어졌다면 번호 순서대로 블록을 쌓아줍니다.

아래 이미지 속 1번은 두 번째 무대가 시작될 때 깜토의 위치와 대사를 정하는 명령어 블록입니다. 지난번 게임은 깜토를 움직일 때마다 화살표 키를 눌러야 했는데요. 화살표 키를 한 번 누르면 그 방향으로 깜토가 계속 움직일 수 있도록 2번 블록을 넣어줍시다.

깜토의 위치와 대사를 정하는 명령어 블록입니다.

 

– 스스로 움직이는 장애물, 여우 만들기

다음은 여우의 움직임 블록을 만들 차례입니다. 게임이 시작되면 여우가 계속 좌우로 움직여 깜토를 방해하도록 1번처럼 명령어를 쌓아주세요.

두 번째 고개에서도 여우가 나타나게 하려면 2번 블록을 넣으면 됩니다. 명령어 속 좌표를 바꾸면 여우가 나타나는 위치도 달라지니 참고하세요!

여우의 움직임 블록을 만듭니다.

 

– 도착 지점 블록과 무대 블록 만들기

자, 이제 마지막 단계입니다. 아래 이미지 왼쪽은 도착 지점 블록인데요. △게임이 시작될 때 첫 번째 도착 지점 만들기 △2단계가 시작되면 도착 지점 나무로 바꾸기 △깜토가 나무에 닿으면 “드디어 도착했다!”라고 외치게 만들기 등의 명령을 수행합니다. 오른쪽은 무대 블록인데요. 배경이 바뀔 때마다 단계 변수 값도 달라지게 만듭니다.

도착 지점 블록과 무대 블록을 만듭니다.

깜토를 위한 숲길 만들기, 다소 어렵고 복잡하다고 느끼셨을 수도 있는데요. 여기까지 차근차근 따라오셨다면 멋진 게임이 만들어졌을 겁니다. 완성된 게임의 모습은 어떨지 궁금하시죠? 과연 깜토가 무사히 숲길을 통과했을지 확인해보겠습니다.

완성된 게임이 실행되고 있습니다.

프로그래밍할 땐 변수를 활용, 다양한 조건을 만들 수 있습니다. 마치 오븐에 빵을 구울 때 타이머로 시간을 맞추거나 온도를 정해두는 것처럼 말이죠. 이때 변수는 ‘시간’과 ‘온도’가 되겠네요. 변수는 정교한 프로그램을 만들기 위해 꼭 친해져야 할 친구입니다. 다음 시간엔 스프라이트 사이간 상호 작용을 활용, 게임을 만들어볼 예정이니 많이 기대해주세요!

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

TOP