스크래치 2.0 기초 동작스크립트 - 벽에 닿으면 튕기기

스크래치 2.0 기초 동작스크립트 - 벽에 닿으면 튕기기

이번 스크래치 2.0 기초 동작스크립트 중 [벽에 닿으면 튕기기] 블록 사용 방법에 대해서 알아보도록하겠습니다.  [벽에 닿으면 튕기기] 블록은 말 그대로 벽에 닿으면 반대 방향 또는 지정한 방향으로 스프라이트를 튕겨내는 블록입니다. 


예제로 스프라이트를 계속해서 움직였을 때 벽을 만나면 튕겨내 보는 예제를 만들어 보도록 하겠습니다.



벽에 닿으면 튕기기


고양이 스프라이트가 벽에 닿으면 반대 방향으로 이동하도록 만들어 보도록 하겠습니다.



블록 코드는 간단한합니다. "깃발을 클릭했을 때" 블록과 이번에는 "무한반복하기" 블록을 가져와 그 안에 "10만큼 움직이기" 블록을 넣고 " 벽에 닿으면 튕기기" 블록을 넣어 블록을 완성합니다.



하나씩 살펴 보자면 프로그램이 실행 되었을 때 계속해서 고양이 캐릭터는 10만큼 움직입니다. 그러다가 벽에 닿으면 반대 방향으로 튕기는데요.  튕기고도 계속해서 10만큼 이동하게 됩니다.




고양이 캐릭터가 이동을 하는데 벽에 닿으면 아마 아래 그림처럼 고양이가 회전을 하면서 이동을 할 텐데요. 공 스프라이트면 상관은 없지만 캐릭터가 이렇게 이동하면 보기가 안좋지요?



캐릭터 방향을 바꾸면 되는데요. 스프라이트를 선택하고 오른쪽 마우스를 클릭하면 여러가지 메뉴가 나타는데 이 중 [info]를 클릭합니다.



회전 방식이 있는데요. 좌우 방향을 선택하게 되면 90도, -90도 방향으로만 이동합니다.



다시 실행을 해보면 캐릭터가 벽에 튕겨나가더라도 회전하지 않고 반대 방향으로 바로 이동하는 모습을 볼 수 있습니다.

스프라이트 방향은 360도, 90 방향 등 다양하게 방향을 정해 놓을 수있는데요. 게임을 만들 때 캐릭터을 잡을 때 유용하게 사용할 수 있습니다.

댓글(4)

  • 2017.04.24 21:16 신고

    뭔가 복잡할줄 알았던게 이렇게 퍼즐로 쉽고 재밌게 만들어지네요.^^

    • 2017.04.24 22:26 신고

      블록 프로그래밍의 장점 중 하나지요. 뭔가 쉽게 구현을 할 수 있다는 점.

      다른 언어였음... 아마 10줄 가지고 는 안 됬을 것 같아요 ㅎㅎ

  • 2017.04.24 22:42 신고

    신기하네요~ 저는 평생 못하는 분야라고 생각했는데 ㅎㅎ 재미있어요^^

Designed by JB FACTORY