배움터
  •  [ETRI와함께하는코딩 놀이터]붕붕~ 헬리콥터를 위아래로
  • 어린이동아 취재팀
  • 2017-06-13 21:56:35
  • 인쇄프린트
  • 글자 크기 키우기
  • 글자 크기 줄이기
  • 공유하기 공유하기
  • URL복사

슈팅게임 ①

《 소프트웨어(SW) 과목이 내년에는 중학교, 2019년에는 초등학교 필수 교육과정이 됩니다. 소프트웨어 수업에서는 ‘코딩’을 주로 배우지요. ‘ETRI(한국전자통신연구원) 지식이러닝연구그룹과 함께하는 코딩 놀이터’에서 게임을 만들어 보면서 코딩과 친해져 봅시다. ETRI는 정보, 통신, 전자, 방송 기술 등 ICT를 연구하는 국책기관이며, 지식이러닝연구그룹은 소프트웨어 교육, e-러닝 교육 시스템을 연구·개발하는 부서. 무료 프로그래밍 도구인 스크래치를 활용해 코딩을 배워봅시다. 스크래치 홈페이지(scratch.mit.edu)에 들어가 메인 화면에서 ‘만들기’를 마우스로 클릭해주세요. 》

 

이번 시간에는 지난 시간에 배운 추가블록을 활용해 헬리콥터가 몬스터들을 해치우는 ‘슈팅게임’을 코딩해 보겠습니다. 화면에 나타나는 몬스터들을 해치우면서 무기도 업그레이드 할 수 있는 게임이랍니다.

 

 
 

이 게임에는 헬리콥터, 꽃, 딱정벌레, 용, 하트 모양의 스프라이트(스크래치에 등장하는 주인공이나 사물)가 필요합니다. 먼저 ‘헬리콥터’ 스프라이트를 코딩해보겠습니다. 새로운 스프라이트에서 ‘저장소에서 스프라이트 선택’ 아이콘을 누르고 스프라이트 저장소에서 ‘Helicopter(헬리콥터)’를 가져오세요. 차례로 ‘Flower Shape(꽃 모양)’, ‘Beetle(딱정벌레)’, ‘Dragon(용)’, ‘Heart(하트)’를 가져옵니다. 꽃은 발사용 탄환이 되고, 딱정벌레와 용은 몬스터가 됩니다.

 

 
 

 그 다음 게임의 배경화면과 음악을 설정해 봅시다. 배경화면은 새로운 배경에서 ‘저장소에서 배경 선택’을 누른 뒤 ‘night city(밤 도시)’배경사진을 선택합니다. 배경음악을 게임 시작부터 끝까지 재생하도록 해 봅시다.

먼저 이벤트 스크립트의 ‘깃발 클릭 했을 때’ 블록을 가져옵니다. 그리고 제어 스크립트에서 ‘무한 반복하기’ 블록을 붙입니다. 이 블록 사이에 소리 스크립트의 ‘㉠ 끝까지 재생하기’ 블록을 끼워 넣습니다. ‘㉠ 끝까지 재생하기’ 블록을 활용하면 중간에 다른 음악 소리가 들리더라도 배경음악이 멈추지 않습니다. ㉠에는 원하는 배경 음악을 찾아서 넣습니다.

 

 
 

헬리콥터가 위, 아래, 오른쪽, 왼쪽으로 움직이도록 코딩해 봅시다. 헬리콥터는 키보드 방향키를 이용해 움직이도록 할 것입니다. 몬스터들이 무대 오른쪽에서 나오므로 헬리콥터는 왼쪽 중간에 두도록 합시다. 이제 헬리콥터가 방향키를 눌렀을 때 움직일 수 있도록 좌표를 코딩해 보겠습니다.

이벤트 스크립트의 ‘깃발 클릭 했을 때’ 블록을 가져온 뒤 동작 스크립트에서 ‘x: ㉠ y: ㉡ 로 이동하기’ 블록을 붙이고, ㉠에는 ‘-95’를, ㉡에는 ‘-68’을 적습니다. 제어 스크립트의 ‘무한 반복하기’ 블록도 이어 붙입니다.

이제 위, 아래, 오른쪽, 왼쪽으로 움직이도록 코딩해 봅시다. 먼저 ‘무한 반복하기’ 블록 안에 제어 스크립트의 ‘만약 ㉢(이)라면’ 블록을 끼워 넣습니다. ㉢에는 관찰 스크립트의 ‘스페이스▼키를 눌렀는가’ 블록에서 ‘▼’를 누른 뒤 ‘위쪽 화살표’를 선택하여 넣습니다. 그리고 동작 스크립트에서 ‘y좌표를 ㉣만큼 바꾸기’ 블록과 ‘벽에 닿으면 튕기기’ 블록을 차례로 끼워 넣습니다. ㉣에는 ‘3’이라고 적어 넣습니다. 같은 방법으로 아래로 움직일 때를 코딩해 봅시다. ‘아래쪽 화살표’를 선택하고, y좌표를 ‘-3’만큼 바꾸도록 설정합니다.

오른쪽 역시 마찬가지입니다. ‘오른쪽 화살표’를 선택하여 넣습니다. 그리고 동작 스크립트에서 ‘x좌표를 ㉤만큼 바꾸기’ 블록과 ‘벽에 닿으면 튕기기’ 블록을 차례로 끼워 넣습니다. ㉤에는 ‘3’이라고 적습니다. 마지막 왼쪽은 ‘왼쪽 화살표’를 선택하여 넣습니다. 그리고 x좌표를 ‘-3’으로 설정합니다.

 

무기 스프라이트를 코딩하기에 앞서 ‘변수’를 만들어 보겠습니다. 데이터 스크립트에서 ‘변수 만들기’를 누르면 ‘새로운 변수’ 만들기 창이 뜹니다. ‘변수 이름’에 ‘무기레벨’을 적고, ‘모든 스프라이트에서 사용’을 선택한 뒤 ‘확인’ 버튼을 누르면 변수가 만들어집니다.

 

다음 시간에는 헬리콥터가 무기를 발사하는 동작을 코딩해 보겠습니다.

 

 

▶김보민 기자 gomin@donga.com·심소희 인턴기자

자료=ETRI 지식이러닝연구그룹 김희권 선임기술원

 

 

어린이동아 취재팀 kids@donga.com

위 기사의 법적인 책임과 권한은 어린이동아에 있습니다.

< 저작권자 ⓒ 어린이동아, 무단 전재 및 재배포 금지 >

한국지역난방공사 권지단
  • 댓글쓰기
  • 로그인
    • 어동1
    • 어동2
    • 어동3
    • 어동4
    • 어솜1
    • 어솜2
    • 어솜3

※ 상업적인 댓글 및 도배성 댓글, 욕설이나 비방하는 댓글을 올릴 경우 임의 삭제 조치됩니다.

더보기

NIE 예시 답안
시사원정대
  • 단비교육