스크래치 돌 피하기 게임만들기 2

스크래치 돌피하기 게임만들기 두번째 시간으로 돌 스프라이트와 나머지 스프라이트에 블록 코딩을 하다록 하겠습니다.



시작하기 - 블록 코딩하기

깃발을 클릭했을 때 시작화면이 보이게 만들어 보겠습니다. 



돌 스프라이트를 선택하고 스크립트를 작성합니다. 먼저 [깃발 클릭했을 때] 블럭을 놓고 [보이기] 블록을 가져옵니다. 


그리고 이미지를 클릭하면 게임을 실행할 수 있게 [이 스프라이트가 클릭될 때]를 가져온 다음 [숨기기]와 [시작하기 방송하기] 블록을 만들어 놓습니다.

[숨기기]블록을 가져오는 이유는 게임이 실행 되었을 때 이미지를 숨기려고 가져오는 것입니다. [시작하기 방송하기] 블록은 [메시지 방송하기]에서 [새 메시지]를 클릭하여 이름을 [시작하기]로 준 것입니다.



돌 스프라이트 블록 코딩하기

돌 스프라이트를 크게 세 부분으로 나누어 코딩을 하도록 하겠습니다.

1번 부부은 [시작하기]에서 메세지 방송을 받아서 시작을 합니다. 그리고 나 자신을 1초 마다 복제를 하도록 합니다.

2번 스프라이트가 복제 되었을 때 위치를 랜덤으로 잡아주는 코드 입니다. 그리고 바닥에 닿을 때까지 계속해서 아래로 이동하도록 코드를 만들어 줍니다. 그리고 그 때 고양이 캐릭터를 만났는지 확인을 하고 만났다면 [만났을때 방송하기] 메세지를 보내도록 되어 있습니다. 그리고 만나지 못했을 경우 나중에 복제본을 삭제하게 되어 있습니다.


3번은 고양이와 돌 이미지가 만났을 경우 모든 프로그램이 멈추도록 코드를 작성합니다.


게임종료 블록 코딩하기

게임 종료 메세지는 마직막에 나와야 함으로 처음에는 [숨기기]블록을 이용하여 이미지를 숨김니다. 그리고 마지막 고양이 캐릭터와 돌 이미지가 만났을 때 메세지를 받아서 [보이기]기를 합니다.



실행해보면 고양이가 돌에 맞았을 때 게임 종료라는 메세지가 나오게 됩니다.



후기

간단하에 하늘에서 내려오는 물제를 피하는 게임을 만들어 보았는데요. 여기서 캐릭터를 이동하는 방법과 스프라이트를 복사하는 방법, 그리고 두 개의 스프라이트가 맞났을 때 발행하는 이벤트 처리 방법만 알고 있다면 다른 게임을 만들 때 많은 도움이 되실 것입니다.


여기서 더 나아가면 점수와, 제한시간, 캐릭터에 몇번의 기회를 주는 등 몇 가지를 넣으면 더 재미있을 것 같습니다. 

https://scratch.mit.edu/projects/164973656/


필요하신 분들은 위 주소에서 게임도 하시고 리믹스하시면 될 것 같습니다. 이상으로 돌 피하기 게임 만들기였습니다.

댓글(2)

  • 2017.07.16 16:54

    한번 만들어봤는데 잘되네요 ㅎㅎ
    앞으로도 이런 글 많이 올려주세요!!

Designed by JB FACTORY