[소프트웨어야 놀자]행성피하기 게임

[소프트웨어야 놀자]행성피하기 게임

오늘 만들 작품이 있는 페이지에 접속하고(https://goo.gl/eryFmQ) 화면 중앙 시작하기 버튼을 클릭해요. 게임이 시작되면 초시계가 동작하고 우주선은 아래로 계속 떨어져요. 마우스를 클릭하면 우주선이 다시 위로 올라가요. 행성 세 개가 순서대로 오른쪽에서 왼쪽으로 움직여요. 화면 왼쪽에 닿은 행성은 다시 높이를 바꿔서 화면 오른쪽에서 나타나요.

마우스를 클릭해서 우주선이 화면 끝에 닿거나, 행성에 닿게 해 볼게요. 화면 끝이나 행성에 닿으면 초시계와 모든 코드가 멈추면서 게임이 끝나요.

게임을 어떻게 만드는지 알아볼까요? [강의 학습하기] 버튼을 클릭해요.

게임이 시작되면 초시계를 동작시키고, 아래로 떨어지는 우주선을 마우스를 클릭하면 올라가게 해 볼게요. [계산]의 '초시계 시작하기'로 초시계를 동작시켜요. [흐름]의 '계속 반복하기' '만일 ∼이라면', [움직임]의 'y 좌표를 ∼만큼 바꾸기' 블록을 이용해 우주선에 그림 (1)처럼 코드를 작성해요.

[소프트웨어야 놀자]행성피하기 게임

그림 (1)에서 y좌표를 -3만큼 계속 바꾸다가 마우스를 클릭하면 3만큼 바꾸지 않고 6만큼 바꾸는 이유가 있어요. 3을 입력하면 계속 떨어지는 값 -3과 마우스를 클릭했을 때 올라가는 값 3이 합쳐서 0이 돼 정지한 상태가 되기 때문이에요.

우주선이 행성이나 화면 끝에 닿으면 초시계를 정지시키고 게임이 끝나게 해 볼게요. 계속 반복해서 우주선이 행성이나 벽(화면 끝)에 닿았는지 확인하고 닿으면 초시계를 정지시켜요. 모든 코드를 멈추게 해 이 기능을 만들어요. 완성된 코드는 그림 (2)와 같아요.

[소프트웨어야 놀자]행성피하기 게임

그림 (2)에서 [판단]의 '또는' 블록을 왜 사용했을까요? 원래 '행성'과 '벽'에 닿았는지 확인하는 코드를 두 번 만들어야 해요. '또는' 블록을 사용하면 간편하게 한번만 코드를 작성하면 돼요.

행성 세 개를 만들어 볼게요. 행성은 처음에 등장하면 모양을 숨기고 무작위 수만큼 기다렸다가 높이도 무작위로 정해요. 복제본을 만든 후 모양을 바꿔요. 이 행동을 세 번 하면 높이와 모양이 다른 행성 세 개를 만들 수 있어요. 완성된 코드는 그림 (3)과 같아요.

[소프트웨어야 놀자]행성피하기 게임

[시작하기]를 누르면 아무런 일도 일어나지 않죠? 행성을 복제했지만 복제를 했을 때 어떤 일을 하도록 명령을 내리지 않았기 때문이에요.

행성이 복제되면 모양이 보이고, 오른쪽에서 왼쪽으로 움직이게 해 볼게요. 왼쪽벽에 닿으면 높이를 바꿔서 다시 오른쪽에서 왼쪽으로 움직이게 해 볼게요. 완성된 코드는 그림 (4)와 같아요.

[소프트웨어야 놀자]행성피하기 게임

드디어 게임이 완성됐어요. 에너지 기능을 추가해 세 번 닿으면 게임이 끝나는 나만의 게임을 만들어 보세요.

위방향 화살표