스크래치 게임 만들기 탱크 3편
- 프로그래밍/스크래치(scratch)
- 2017. 7. 10. 10:51
스크래치 게임 만들기 탱크 3편으로 적탱크가 알아서 돌아다니면서 미사일을 발사하도록 만들어 보겠습니다. 사실 이부분 때문에 그냥 2인용 게임으로 만들까 고민을 많이 했는데요.
고민에 고민을 하다보니 해결이 되긴 하더라고요. 여러가지 방법을 생각하다가 벽에 닿거나 시간이 지나면 랜덤으로 방향을 정해서 움직이는 방법으로 코드를 만들어 보았습니다.
적 탱크 랜덤으로 움직이게 만들기
적 탱크 이동 방향을 랜덤으로 생성하기 위해서는 먼저 변수를 생성해야 합니다. 변수 생성은 스크립트에서 [데이터]-[변수 문들기]-[변수 이름]-[확인] 순으로 생성해 주면 됩니다.
이제 적탱크 스크립트 코드를 보도록하겠습니다. 총 3부분으로 나눠 코드를 작성했습니다. 1번과 3번은 적탱크가 자동으로 이동하는 코드입니다.
1번 코드를 살펴보면 시작했을 때 방향을 정해주기 위해 처음 난수를 발생시켜 변수에 넣어주고 방향에 따라 이동을 합니다. 예를 들면 처음 난수가 1이 발생하면 방향 변수에 1을 넣어 주어 [방향] 변수 값이 1이 됩니다. 그러면 그 아래에 [만약 방향 =1 이라면] 코드로 이동하여 0도 방향(위)으로 이동하게 됩니다.
탱크가 벽에 닿았을 때 강제로 방향을 바꿔야 하는데 이 때 난수를 발생시켜 이동 방향을 바꿔줍니다. 그런데 이렇게 만들면 탱크가 모서리만 이동을 합니다. 그래서 3번 코드를 보면 3초마다 다시 난수를 발생시켜 방향을 변경하도록 만들어 주었습니다.
그리고 2번코드 자동으로 미사일을 발사하도록 1초마다 발사명령을 하도록 만들었습니다.
Ball2 코드입니다. 처음 만들었던 ball 코드와 다른 점은 x좌표와 y좌표 대상을 적탱크로 정하고 방향과 미사일 발사시 발생하는 음향을 모두 [탱크]로 변경해 주었습니다.
시간에 따라서 자동으로 발생되며 소리도 나면서 탱크를 만나면 tom drum음도 발생합니다.
스크래치 게이 만들기 탱크 3편 동작 영상
벽에 닿거나 3초의 시간이 지나면 방향이 변하는 것을 보실 수 있습니다. 쉽게 확인할 수 있도록 방향 표기를 보이게 해 놓았는데요, 1, 3 등 숫자가 변경 될 때마다 방향도 변경됩니다.
항상 말씀 드리지만 이 방법이 정답이 아닙니다. 같은 결과지만 방법은 여러가지이기 때문에 이 보다 더 좋은 방법이 있다면 그 코드로 만드시면 됩니다. 오늘도 즐거운 코딩하시기 바랍니다.
'프로그래밍 > 스크래치(scratch)' 카테고리의 다른 글
스크래치 피아노 연주 프로그램 만들기 (0) | 2017.07.22 |
---|---|
스크래치 게임 만들기 탱크 4편 완결 (4) | 2017.07.11 |
스크래치 게임 만들기 탱크 2편 (0) | 2017.07.05 |
스크래치 게임 만들기 탱크 1편 (6) | 2017.06.27 |
스크래치 돌 피하기 게임만들기 2 (2) | 2017.06.08 |