d라이브러리









[스티브코딩쌤 - 마인크래프트] 부글부글! 화산폭발 관찰하기

 

 

화산이 폭발하면 용암이 흘러내리고 화산재와 화산가스가 분출돼요. 보통 지진과 동반되어 일어나기 때문에 매우 위험한 자연 현상이지요. 우리나라에도 백두산과 한라산과 같은 화산이 있어요. 이번 시간에는 화산 폭발을 마인크래프트에 구현해 볼게요!   

 

 

 

첫 번째 화산 만들기

 

‘원 모양 만들기’ 명령블록을 이용해 원뿔 형태로 화산을 만들어 볼게요.  

 

 

 

➊ ‌코드 작성기에서 채팅명령어를 ‘1’로 약속하세요.
➋ ‌‘변수-변수 만들기’를 눌러 ‘반지름’, ‘높이’, ‘분화구 위치’ 변수를 각각 만드세요. 이어서 ‘변수-변수에 저장’ 명령블록을 가져와 화면과 같이 코드를 작성하세요. 
➌ ‌‘반복-반복(for)’ 명령블록을 가져와 ‘index’에 변수 ‘높이’를 넣고 반복 값은 ‘20’으로 바꾸세요.
➍ ‌‘모양-원 모양 만들기’ 명령블록을 가져와 블록 값을 ‘기반암’으로 바꾸세요. 
➎ ‌‘계산-더하기’ 명령블록과 변수 ‘높이’를 가져와 중심 좌표에 화면과 같이 넣으세요.
➏ ‌반지름 값에 변수 ‘반지름’을 가져와 넣으세요.
➐ ‌방향을 ‘y좌표(위쪽, 아래쪽)’로 바꾸세요.
➑ ‌‘변수-변수 값 증가’ 명령블록을 가져와 화면과 같이 코드를 작성하세요.
➒ ‌‘모양-원 모양 만들기’ 명령블록을 가져와 블록 값을 ‘공기블록’으로 바꾸세요.
➓ ‌중심 좌푯값을 화면과 같이 입력하고 방향은 ‘y좌표(위쪽, 아래쪽)’로 바꾸세요.
11 ‌같은 방법으로 ‘원 모양 만들기’ 명령블록을 추가하고 중심 좌표를 바꾸세요.
12 ‌‘변수-변수에 저장’, ‘좌표-상대좌표’, ‘원점으로 만들기’ 명령블록을 가져와 화면과 같이 코드를 작성하여 분화구 위치의 변숫값을 정하세요.

 

잠깐! ‘원점으로 만들기’ 명령블록은 어떤 기능을 하나요?
‌상대좌표로 표현된 좌푯값을 절대좌표로 바꾸어 주는 역할을 해요. 이 명령블록을 사용한 이유는 화산은 상대좌표를 이용해 플레이어의 위치를 기준으로 건축하고, 화산 폭발 과정은 절대좌표로 구현하기 위해서예요. 화산폭발 과정도 상대좌표로 구현한다면 플레이어가 움직이면서 화산을 관찰할 수 없답니다.

 

 

두 번째 용암과 폭발 구현하기

분화구에서 흘러내리는 용암은 용암블록으로, 폭발은 TNT블록으로 표현해 볼게요.

 

 

 

➊ ‌코드 작성기에서 채팅명령어를 ‘2’로 약속하세요. 
➋ ‌‘모양-원 모양 만들기’ 명령블록을 가져와 블록 값을 ‘용암블록’으로 바꾸세요. 
➌ ‌‘좌표-좌표 더하기’, ‘월드좌표’ 명령블록과 ‘변수-분화구 위치’를 가져와 화면과 같이 코드를 작성하세요. 앞서 설정했던 분화구 위치에서 두 칸 올라간 곳이 용암이 흘러나오는 중심 좌표가 되도록 했어요.
➍ ‌반지름 값은 ‘10’, 방향은 ‘y좌표(위쪽, 아래쪽)’로 바꾸세요.
➎ ‌‘반복-반복(while)’ 명령블록을 가져와 조건을 ‘참(true)’으로 바꾸세요. 조건이 항상 참이기 때문에 아래 코드가 반복해서 실행돼요.
➏ ‌‘모양-원 모양 만들기’ 명령블록을 가져와 블록 값을 ‘TNT블록’으로 바꾸세요.
➐ ‌중심 좌푯값에 변수 ‘분화구 위치’를 넣으세요. 
➑ ‌반지름 값은 ‘9’, 방향은 ‘y좌표(위쪽, 아래쪽)’로 바꾸세요.
➒ ‌‘몹-소환’, ‘몹-마법 발사’, ‘변수-분화구 위치’를 가져와 화면과 같이 코드를 작성하세요. 불 붙은 TNT블록이 터지면 주변에 설치된 TNT블록까지 연달아 폭발하게 만드는 명령이에요.
➓ ‌‘반복-일시중지’ 명령블록을 가져와 시간을 ‘10000ms(10초)’으로 바꾸세요. 용암이 화산에서 흘러나오는 게 10초마다 반복되도록 하는 명령이에요.

 

 

세 번째 화산재 표현하기

화산재는 모래블록이 떨어지는 것으로 표현해 볼게요.

 

 

 

➊ ‌코드 작성기에서 채팅명령어를 ‘3’으로 약속하세요. 
➋ ‌‘반복-반복(while)’ 명령블록을 가져와 조건을 ‘참(true)’으로 바꾸세요. 조건이 항상 참이기 때문에 아래 명령이 반복해서 실행돼요.
➌ ‌‘블록-블록 놓기’ 명령블록을 가져와 블록 값을 ‘붉은 모래블록’으로 바꾸세요.
➍ ‌‘위치-랜덤 위치 선택’, ‘좌표 더하기’, ‘월드좌표’ 명령블록과 변수 ‘분화구 위치’를 가져와 화면과 같이 코드를 작성하세요. 분화구가 있는 위치를 중심으로 x좌푯값이 20만큼 작은 곳부터 20만큼 큰 곳까지, y좌푯값이 20만큼 큰 곳에서 30만큼 큰 곳까지, z좌푯값이 20만큼 작은 곳에서 20만큼 큰 곳까지의 위치 중에서 무작위로 선택된 곳에 블록을 놓는 명령이에요.
➎ ‌‘반복-일시중지’ 명령블록을 가져와 시간을 ‘100ms(0.1초)’으로 바꾸세요. 0.1초마다 블록을 놓도록 하는 명령이에요.
➏ ‌‘코드 시작’ 버튼을 누르고 ‘Alt+Tab’을 눌러 마인크래프트로 돌아가세요. 화산을 만들고 싶은 곳의 땅에서 30칸 정도 위로 이동한 뒤 채팅명령어 ‘1’을 실행하세요. 건축이 끝날 때까지 움직이지 말고 기다리세요.
➐ ‌채팅명령어 ‘2’와 ‘3’을 차례로 입력해서 화산 폭발 과정을 관찰해 보세요.

 


 

이 기사의 내용이 궁금하신가요?

기사 전문을 보시려면500(500원)이 필요합니다.

2022년 13호 어린이과학동아 정보

  • 이상민 교사,크리에이터
  • 에디터

    이다솔 기자 기자

🎓️ 진로 추천

  • 지구과학
  • 컴퓨터공학
  • 환경학·환경공학
이 기사를 읽은 분이 본
다른 인기기사는?