[소프트웨어야 놀자]바운스 볼 게임

[소프트웨어야 놀자]바운스 볼 게임

오늘 만들 작품이 있는 페이지에 접속하고(https://goo.gl/qNUftj)화면 중앙 시작하기 버튼을 클릭해요. 게임이 시작되면 공이 아래로 떨어져요. 떨어지던 공은 상자에 부딪히면 다시 높이 튀어 올라요.

키보드 오른쪽, 왼쪽 화살표를 눌러봐요. 어떤 일이 일어나나요? 공이 키보드 화살표 방향으로 이동해요. 마지막으로 물음표가 있는 특수 상자에 부딪혀 봐요. 공이 일반 상자보다 높게 튀어 오르면서 동전에 닿아요. 동전에 닿으면 게임은 끝나요.

이 게임을 어떻게 만드는지 알아볼까요? [강의 학습하기] 버튼을 클릭해요. 게임이 시작되면 상자가 생기도록 해 볼게요. 동일한 성질을 가진 상자를 만들기 위해 [흐름]의 '복제본 만들기' 블록이 필요해요. 일정한 간격으로 상자가 만들어지도록 [움직임]의 'x 좌표를 ∼만큼 바꾸기' 블록을 가져와 상자에 그림(1)처럼 코드를 작성해요.

[소프트웨어야 놀자]바운스 볼 게임

공이 아래로 떨어지게 만들어 볼게요. 공이 떨어지는 속도를 저장하는 '속도' 변수를 만들어요. 시작하기를 누르면 변수창을 숨기도록 [자료]의 '변수 숨기기' 블록을 가져와요. 계속해서 속도 변수값 만큼 y좌표를 바꿔주도록 공에 그림(2)처럼 코드를 작성해요.

[소프트웨어야 놀자]바운스 볼 게임

이 상태에서 [시작하기]를 누르면 공이 움직이지 않아요. 속도 변수에는 기본값 0이 들어가 있기 때문이에요. 이제 게임이 시작되면 공이 계속 떨어지고, 상자에 닿으면 공이 튕기게 해 볼게요. 이 기능은 공이 상자에 닿지 않을 때는 속도를 -로 계속 더해줘서 떨어지게 하고, 상자에 닿았을 때는 속도를 +로 만드는 방식으로 구현해요. [시작]의 '시작하기 버튼을 클릭했을 때', [흐름]의 '계속 반복하기' '만일 ∼이라면', [판단]의 '∼에 닿았는가', [자료]의 '∼를 ∼로 정하기' '∼에 ∼만큼 더하기' 블록을 활용해 완성된 코드는 그림(3)과 같아요.

[소프트웨어야 놀자]바운스 볼 게임

이어 특수 상자에 닿았을 때 공이 높게 튕기고, 동전에 닿으면 게임이 끝나도록 그림(4)처럼 코드를 작성해 그림(3)의 '계속 반복하기' 안에 넣어요.

[소프트웨어야 놀자]바운스 볼 게임

마지막으로 키보드 오른쪽, 왼쪽 화살표 키를 눌러 공을 키보드 화살표 키 방향으로 움직이게 해 볼게요. 이 기능은 계속 반복해서 키보드 키를 눌렀는지 확인하고, 눌렀을 때 x좌표를 활용해 그 키 방향으로 좌표값을 바꾸면서 구현 가능해요. 완성된 코드는 그림(5)와 같아요.

[소프트웨어야 놀자]바운스 볼 게임

드디어 게임이 완성됐어요. 시간이 지나면 사라지는 상자 등을 넣어 나만의 바운스볼 게임을 만들어 보세요.

도움말=송상수 엔트리교육연구소 연구원

위방향 화살표