스크래치 2.0 기초 복제하기

스크래치 2.0 기초 복제하기

게임을 만들 때 가장 많이 사용하는 기능 중 하나가 복제 기능인데요. 이번 스크래치 2.0 기초 시간에서는 [복제하기] 블록에 대해서 알아보고 실습을 하겠습니다.  




스크래치 2.0 나 자신 복제하기

이번 시간에 만들어 볼 예제는 마우스가 움직일 때 캐릭터가 같이 따라서 움직이면서 나 자신을 복제하는 것입니다. 이 때 중요한 것은 복제한 다음 처리입니다.


프로그램에서 복제를 했을 경우 계속해서 복제를 하게 됩니다. 그렇게 되면 나중에는 무한정 복제되어 컴퓨터가 다운 될 수도 있습니다. 그래서 항상 복제를 하게 되면 필요 없는 것은 삭제를 시켜 줘야 합니다.


스프라이트에서 고양이 캐릭터를 클릭한 다음 프로그램을 작성하도록 하겠습니다. 항상 가장 먼저 가져오는 블록은 [깃발을 클릭했을 때] 블록을 가져옵니다. 그리고 [제어] 스크립트에서 [무한 반복하기]블록을 가지고 옵니다.



캐릭터가 마우스 포인터 위치를 계속 따라다녀야 함으로 [동작] 스크립트에서 [마우스 포인터 위치로 이동하기] 블록을 넣습니다. 그리고 난 다음 [제어]에서 [나 자신 복제하기]를 넣습니다. 그러면 마우스를 따라 다니면서 캐릭터를 계속해서 복사합니다.



복제본 삭제하기

이번에는 만든 복제본은 삭제해 보겠습니다. 위에서 무한 반복으로 나 자신을 복제했기 때문에 프로그램이 멈추지 않는 한 계속해서 나 자신을 복제하게 됩니다. 그러다보면 언젠가는 시스템이 먹통이 되겠지요.


그래서 항상 불필요한 것은 없애줘야합니다. 계속해서 반들어진 복제본을 1초 있다가 삭제해 보도록 만들어 보겠습니다.


[제어] 스크립트에서 [복제 되었을때] 블록을 가지고 온 다음 [1초 기다리기]와 [이 복제본 삭제하기]를 가지고 옴니다.




이제 프로그램을 실행시켜 보면 1초 있다가 복제 되었던 복제본이 사라지는 것을 볼 수 있습니다.


슈팅 게임을 만들 때 미사일을 복제하여 만들 경우 꼭 이렇게 삭제를 만들어 줘야 프로그램 원활하게 움직일 수 있으니 꼭 참고하시기 바랍니다.


이상으로 스크래치 2.0 기초 복제하기를 마치겠습니다. (유튜브에서 "대디의 IT 공방"을 검색하시면 더 많은 정보를 보실 수 있습니다.)

댓글(4)

  • 2017.05.26 07:39 신고

    즐거운 금요일 되세요^^

  • 세아
    2019.07.08 16:14

    제가게북치(게임)처럼 복제되었다가 복제본1나삭제할건데 어떻게하면 좋을까요?

    • 2019.07.10 15:15 신고

      코드를 자세히 보지 못해서 뭐라고 뭐라고 설명을 드리기 어려워요 ^^;;

Designed by JB FACTORY