ghostbusters & lost in space · 2019. 12. 11. · ghostbusters & lost in space simple coding for...

28
Ghostbusters & Lost in Space Simple coding for total beginners Scratch Module 3

Upload: others

Post on 17-Feb-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

  • Ghostbusters &Lost in Space

    Simple coding for total beginners

    Scratch Module 3

  • {c

    ode club}

    www.codeclub.o

    rg

    {c

    ode club}

    www.codeclub.o

    rg

    {c

    ode club}

    www.codeclub.o

    rg

    CodingIwww.codeclub.org

    {code club}

    Coding

    Star

    {c

    ode club}

    www.codeclub

    .org

    {code club}

    www.codeclub.org

    First published in 2018 by Raspberry Pi Trading Ltd, Station Road, Cambridge, CB1 2JH

    Writers: Rik Cross, Tracy Gardner

    Illustrator: Timothy Winchester • Design: Critical Media

    Editor: Phil King • Sub Editor: Nicola King

    Publisher: Russell Barnes • CEO: Eben Upton

    Projects tested by: Alexander King & the Code Club community

    ISBN: 978-1-912047-67-3

    Printed in China

    The publisher, and contributors accept no responsibility in respect of any omissions, errors or issues relating to goods, software, viruses, or exposure to harmful web content on websites other than its own. Except where stated, the content of this book is licensed

    under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0)

    COPYRIGHT ⓒ2019 CODE CLUB Republic of KOREA.

    발행일

    Nov 2019

    발행처

    04789 서울특별시 성동구 왕십리로 130, 10층(사)코드클럽한국위원회

    교육문의

    Tel. +82-2-792-0615Fax. +82-2-6213-0615Email. [email protected]

  • 소개

    Ghost를 잡는 게임을 만들어 봅시다.

    3

    1

    모든 Code Club회원에게 회원 가입을 추천합니다. 우리는 가입자 수를 체크하여 우리의 기여도를 판단하고, 이를 바탕으로 계속해서 어린이들이 무료로 코딩을 배울 수 있는 컨텐츠를 제공할 수 있습니다. 가입은 codeclubworld.org 에서 할 수 있습니다.

    {c

    ode club}

    www.codeclub.o

    rg

    {c

    ode club}

    www.codeclub.o

    rg

    {c

    ode club}

    www.codeclub.o

    rg

    CodingIwww.codeclub.org

    {code club}

    Coding

    Star

    {c

    ode club}

    www.codeclub

    .org

    {code club}

    www.codeclub.org

    First published in 2018 by Raspberry Pi Trading Ltd, Station Road, Cambridge, CB1 2JH

    Writers: Rik Cross, Tracy Gardner

    Illustrator: Timothy Winchester • Design: Critical Media

    Editor: Phil King • Sub Editor: Nicola King

    Publisher: Russell Barnes • CEO: Eben Upton

    Projects tested by: Alexander King & the Code Club community

    ISBN: 978-1-912047-67-3

    Printed in China

    The publisher, and contributors accept no responsibility in respect of any omissions, errors or issues relating to goods, software, viruses, or exposure to harmful web content on websites other than its own. Except where stated, the content of this book is licensed

    under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0)

  • 1단계 : 유령 움직이게 하기

    단계별 체크리스트

    • 온라인 또는 오프라인으로 스크래치를 사용할 수 있습니다.

    • 온라인 - 온라인 편집기를 사용하여 새 스크래치 프로젝트를

    작성하려면 rpf.io/scratch-new 로 이동 하십시오.

    • 오프라인 - 오프라인 으로 작업하고 편집기를 아직 설치하지 않은

    경우, rpf.io/scratch-off 에서 다운로드 할 수 있습니다.

    • Ghost 스프라이트와 어울리는 배경을 넣어주세요.

    2

  • • Ghost 스프라이트에 다음의 코드를 넣어서 나타났다 사라지게

    만드세요.

    • 녹색 깃발을 클릭해서 유령 스프라이트의 코드가 작동하는지

    확인해보세요.

    MEMO.

    3

  • 말하 2단계 : 무작위 유령들

    현재 Ghost 스프라이트는 움직이지 않기 때문에 잡기가 너무

    쉽습니다.

    단계별 체크리스트

    • Ghost 스프라이트가 가만히 있지 않도록 무작위 x와 y좌표를 지정하여

    만들 수 있습니다.

    • Ghost 스프라이트 코드에 [동작] 카테고리의 블록을

    추가하여 다음과 같이 만들어 보세요.

    • Ghost 스프라이트를 실행해 보세요. 이제는 매번 다른 곳에서 나타날

    것입니다.

    4

  • 도전과제 : 더욱 더 무작위로

    Ghost 스프라이트가 다시 나타나기 까지의 시간을 [제어] 블록의

    로 할 수 있나요? 형태 블록의 블록을 사용하여

    Ghost 스프라이트가 나타날 때마다 무작위 크기로 나오게 만들 수 있나요?

    MEMO.

    5

  • 말하 3단계 : 유령 잡기

    플레이어가 Ghost를 잡을 수 있도록 만듭니다.

    단계별 체크리스트

    • 플레이어가 Ghost를 잡을 수 있게 하려면 다음의 코드를 추가해

    주세요.

    • 프로젝트를 다시 실행해 보세요. Ghost가 나타났을 때 클릭해서 잡을

    수 있나요? Ghost를 잡기 힘들다면 이 버튼을 클릭해서 전체화면

    모드로 플레이 해 보세요.

    도전과제 : 음향효과 더하기

    Ghost가 잡힐 때마다 소리가 나게 할 수 있나요?

    6

  • 말하 4단계 : 점수 더하기

    점수를 추가하여 게임을 좀 더 흥미롭게 만들어 봅시다.

    단계별 체크리스트

    • 플레이어의 점수를 저장하고 계산 할 수 있는 변수가 필요합니다.

    변수는 점수와 같이 변하는 데이터를 저장할 수 있는 장소입니다.

    새 변수를 만들려면 ‘스크랩트’ 탭을 누른 후 데이터 블록에서

    ‘변수 만들기’를 클릭합니다.

    7

  • 또한 점수를 무대의 왼쪽 상단에서 확인 할 수 있습니다.

    변수의 이름을 ‘score’로 만들고 ‘모든 스프라이트에서 사용’에 체크한 후

    ‘확인'을 눌러서 변수를 만듭니다. 그러면 변수와 함께 쓸 수

    있는 코드 블록들이 보입니다.

    8

  • 녹색 깃발을 클릭해서 새 게임이 시작되면 플레이어의 점수를 0으로

    초기화 시켜줘야 합니다.

    Ghost가 잡힐 때마다 점수가 1씩 올라가도록 합니다.

    • 게임을 다시 시작해서 유령을 잡아보세요. 점수가 올라가나요?

    9

  • 말하 5단계 : 타이머 더하기

    10초 안에 최대한 많은 유령을 잡게 해서 게임을 더 흥미롭게 만들

    수 있습니다.

    단계별 체크리스트

    • 남은 시간을 표시하기 위해 변수를 하나 더 추가합니다. 스테이지를

    클릭 한 후 새로운 변수 [time]을 만드세요.

    • 타이머는 다음과 같이 작동해야 합니다.

    • 타이머는 10초에서 시작합니다.

    • 타이머는 1초씩 내려갑니다.

    • 타이머가 0초가 되면 게임이 끝나야 합니다.

    10

  • • 스테이지에 추가할 코드는 다음과 같습니다.

    [제어] 카테고리의 , [연산]카테고리의 = 코드를

    사용하는 방법입니다.

    11

  • • 친구에게 게임을 해보게 하세요. 몇 점을 받을 수 있나요? 게임이 너무

    쉬워 보인다면 다음의 내용으로 난이도를 올릴 수 있습니다.

    • 플레이어에게 시간을 더 적게 주기

    • Ghost들이 더 뜸하게 나오기

    • Ghost를 더 작게 만들기

    • 게임에 알맞은 난이도라고 생각 될 때까지 계속 시험 해 보세요.

    • 무대에서 [time]변수를 무대의 오른쪽으로 옮기세요. 또한 변수에서

    마우스 오른쪽 버튼을 클릭 한 후 ‘변수값 크게 보기'를 선택해서

    크게 보이게 만들 수 있습니다.

    12

  • 도전과제 : 더 많은 스프라이트

    게임에 다른 스프라이트들을 추가할 수 있나요?

    추가할 스프라이트에 대해 몇가지를 생각해 보세요.

    얼마나 큰가요?

    Ghost 보다 더 자주 혹은 뜸하게 나오게 할 건가요?

    잡혔을 땐 어떻게 보이고 들리게 할 건가요?

    잡았을 땐 몇 점을 얻거나 잃게 되나요?

    다른 스프라이트를 추가하는 데 도움이 필요하다면 위의 단계들을 다시 자세히

    살펴보세요.

    13

  • 소개

    나만의 애니메이션을 프로그램 하는 방법을 배울 것입니다!

    14

    3 모든 Code Club회원에게 회원 가입을 추천합니다. 우리는 가입자 수를 체크하여 우리의 기여도를 판단하고, 이를 바탕으로 계속해서 어린이들이 무료로 코딩을 배울 수 있는 컨텐츠를 제공할 수 있습니다. 가입은 codeclubworld.org 에서 할 수 있습니다.

  • 1단계 : 우주선 움직이게 하기

    지구로 날아가는 우주선을 만들어봅시다!

    단계별 체크리스트

    • 새 Scratch 프로젝트를 엽니다.

    • 온라인 : rpf.io/scratchon 에서 새로운 온라인

    Scratch 프로젝트를 엽니다 .

    • 오프라인 : 오프라인 편집기에서 새 프로젝트를 엽니 다.

    • Scratch 오프라인 편집기를 다운로드하여 설치해야 하는 경우

    rpf.io/scratchoff 에서 찾을 수 있습니다 .

    • 스테이지에 ‘Rocketship’과 ‘Earth’ 스프라이트를 추가하고

    스테이지에는 ‘Stars’ 배경을 더해 넣으세요. 스테이지는 이렇게 꾸며질

    것입니다.

    15

  • • 화살표 모양 도구로 이미지를 선택하고 위쪽 원형 회전 핸들을 눌러서

    우주선이 누워있을 때까지 돌려주세요.

    • 우주선 스프라이트를 클릭하고 ‘모양'탭을 누르세요.

    16

  • • 화살표 모양 도구로 이미지를 선택하고 위쪽 원형 회전 핸들을 눌러서

    우주선이 누워있을 때까지 돌려주세요.

    • 우주선 스프라이트를 클릭하고 ‘모양'탭을 누르세요.

    17

  • • 스테이지 위의 녹색 깃발을 클릭해서 애니메이션을 실행해 보세요.

    스크린 위치 이 스테이지의 중심입니다. 은

    왼쪽 상단 쪽이고 은 오른쪽 상단 쪽입니다.

    X:(0) y:(0)

    18

  • 말하 2단계 : 루프를 사용한 애니메이션

    우주선을 움직이게 만드는 또다른 방법은 조금씩 움직이라고 명령한

    것을 여러 번 실행시키는 것입니다.

    단계별 체크리스트

    • 코드에서 블록위에서 마우스 오른쪽 버튼을

    클릭한 후 ‘삭제’를 눌러서 지우세요. 또한 블록을 스크립트 공간에서

    코드블록 공간으로 드래그 해서 지울 수도 있습니다.

    • 블록을 삭제한 후 이 코드를 넣으세요.

    19

  • 제어 카테고리의 블록은 코드를 여러 번 반복할 때 사용되며

    ‘루프 라고도 불립니다.

    • 깃발을 클릭해서 새 코드를 실행시켜보면 이전과 다를 것 없이

    움직인다는 것을 확인할 수 있습니다.

    • 루프에는 더 많은 코드를 더해서 여러가지 기능들을 실행하게 만들 수

    있습니다. 루프에 형태 카테고리의 블록을

    넣어서 우주선이 움직일 때 계속 색을 바꾸게 만들어 보세요.

    20

  • • 또한 우주선이 지구에 다가갈수록 더 작아 보이게 만들 수도 있습니다.

    • 초록 깃발을 클릭해서 새 애니메이션을 확인해봅시다.

    • 애니메이션을 시험할 때 초록 깃발을 간격을 두고 두 번 클릭해

    보세요. 우주선이 올바른 크기로 시작하나요? 이 블록을 사용해서

    애니메이션을 고쳐 볼 수 있겠나요?

    21

  • 말하 3단계 : 떠다니는 원숭이들

    우주에서 길을 읽은 원숭이들을 애니메이션에 추가해봅시다!

    단계별 체크리스트

    • 원숭이 스프라이트를 저장소에서 추가해 주세요.

    • 원숭이 스프라이트를 클릭하고 ‘모양'탭으로 가면 원숭이의 모습을

    수정할 수 있습니다. ‘타원'도구를 눌러서 원숭이의 머리 주위에 흰색

    우주 헬멧을 그려주세요.

    22

  • • 이제 ‘스크립트 ’탭에 돌아가서 원숭이에게 이 코드를 추가하여

    계속해서 천천히 돌아가게 만들어 주세요.

    제어 카테고리의 블록은 다른 종류의 루프이며,

    와는 달리 계속 반복되는 루프입니다.

    • 초록 깃발을 클릭해서 원숭이가 어떻게 움직이는 확인해 보세요.

    초록 깃발 옆의 멈추기 버튼을 눌러야 애니메이션이 종료됩니다.

    23

  • 말하 4단계 : 튕기는 운석들

    애니메이션에 떠다니는 운석들을 더해봅시다.

    단계별 체크리스트

    • ‘rocks’ 스프라이트를 스테이지에 추가해 주세요.

    • ‘rocks’ 스프라이트에 이 코드를 넣어서 스테이지 안에서 튕겨 나가게

    만드세요.

    • 초록 깃발을 클릭해서 ‘rock’ 스프라이트가 어떻게 움직이는 확인 해

    보세요. 스테이지 안에서 튕겨 나가고 있나요?

    24

  • 말하 4단계 : 튕기는 운석들

    애니메이션에 떠다니는 운석들을 더해봅시다.

    단계별 체크리스트

    • ‘rocks’ 스프라이트를 스테이지에 추가해 주세요.

    • ‘rocks’ 스프라이트에 이 코드를 넣어서 스테이지 안에서 튕겨 나가게

    만드세요.

    • 초록 깃발을 클릭해서 ‘rock’ 스프라이트가 어떻게 움직이는 확인 해

    보세요. 스테이지 안에서 튕겨 나가고 있나요?

    25

  • COPYRIGHT ⓒ2019 CODE CLUB Republic of KOREA.