3권 · 9. 재미있는 말놀이를 해요
재미있는 말놀이를 해요
엘리오와 함께 재미있는 말놀이 게임을 만들어 보아요. 버튼을 누르면 말풍선처럼 신나는 반응이 나오는 코딩이에요 🙂
오늘의 미션
말놀이 규칙을 정하고 엘리오가 즐겁게 반응하게 만들어요.
무엇을 만들까?

같은 규칙을 반복해서 쓰면 게임이 더 재미있어져요.
조건을 넣으면 엘리오가 상황에 맞게 다르게 움직여요.
소리와 움직임을 함께 쓰면 말놀이가 더 생생해져요.
준비물
- 엘리오말놀이를 보여 주는 귀여운 로봇이에요.
- 코딩 블록말놀이 순서와 규칙을 만드는 블록이에요.
- 말놀이 힌트어떤 말을 떠올릴지 도와주는 힌트예요.
따라해 보자
- 1
규칙 정하기
어떤 말놀이를 할지 먼저 정해요.
- 2
시작 만들기
버튼을 누르면 놀이가 시작되게 만들어요.
- 3
반응 넣기
맞거나 틀렸을 때 엘리오가 다르게 반응하게 해요.
- 4
반복해 보기
여러 번 놀 수 있도록 다시 시작하는 흐름을 만들어요.
완성 코드
🧱완성 코드 172블록 — 블록이 아주 많아요! 눌러서 펼쳐 보기
이 작품은 코드가 길어요. 천천히 부분부분 따라 만들어 봐요. 아래는 실제 Scratch 3.0 완성 코드예요.
무대
⚑ 클릭했을 때
무한 반복하기
[게임배경음악.mp3▾] 끝까지 재생하기
[게임 시작▾] 신호를 받았을 때
[시간▾] 을(를) (60)로 정하기
무한 반복하기
(1)초 기다리기
[시간▾] 을(를) (-1)만큼 바꾸기
만약 (시간) = (0) (이)라면
[게임 끝▾] 신호 보내고 기다리기
[this script▾] 멈추기
스프라이트 1
⚑ 클릭했을 때
[점수▾] 을(를) (0)로 정하기
[문제▾]의 (all)번째 항목 삭제하기
(엘리오) 을(를) [문제▾]에 추가하기
(블루투스) 을(를) [문제▾]에 추가하기
(컴퓨터) 을(를) [문제▾]에 추가하기
(고슴도치) 을(를) [문제▾]에 추가하기
(축구공) 을(를) [문제▾]에 추가하기
(이순신) 을(를) [문제▾]에 추가하기
(파인애플) 을(를) [문제▾]에 추가하기
(글자를 차례대로 클릭해서 단어를 만들어 보세요.) 을(를) (3)초 동안 말하기
[게임 시작▾] 신호 보내기
정의하기 4글자 순서 정하기
[선택한 순서▾] 을(를) ((1) 부터 ([순서▾]의 항목 수) 사이의 난수)로 정하기
[1번▾] 을(를) ([순서▾]의 (선택한 순서)번째 항목)로 정하기
[순서▾]의 (선택한 순서)번째 항목 삭제하기
[선택한 순서▾] 을(를) ((1) 부터 ([순서▾]의 항목 수) 사이의 난수)로 정하기
[2번▾] 을(를) ([순서▾]의 (선택한 순서)번째 항목)로 정하기
[순서▾]의 (선택한 순서)번째 항목 삭제하기
[선택한 순서▾] 을(를) ((1) 부터 ([순서▾]의 항목 수) 사이의 난수)로 정하기
[3번▾] 을(를) ([순서▾]의 (선택한 순서)번째 항목)로 정하기
[순서▾]의 (선택한 순서)번째 항목 삭제하기
[선택한 순서▾] 을(를) ((1) 부터 ([순서▾]의 항목 수) 사이의 난수)로 정하기
[4번▾] 을(를) ([순서▾]의 (선택한 순서)번째 항목)로 정하기
[순서▾]의 (선택한 순서)번째 항목 삭제하기
[3글자▾] 신호를 받았을 때
[순서▾]의 (all)번째 항목 삭제하기
(1) 을(를) [순서▾]에 추가하기
(2) 을(를) [순서▾]에 추가하기
(3) 을(를) [순서▾]에 추가하기
3글자 순서 정하기
[4글자▾] 신호를 받았을 때
[순서▾]의 (all)번째 항목 삭제하기
(1) 을(를) [순서▾]에 추가하기
(2) 을(를) [순서▾]에 추가하기
(3) 을(를) [순서▾]에 추가하기
(4) 을(를) [순서▾]에 추가하기
4글자 순서 정하기
정의하기 문제 만들기
[답▾] 을(를) ([문제▾]의 ((1) 부터 ([문제▾]의 항목 수) 사이의 난수)번째 항목)로 정하기
만약 ((답)의 길이) = (4) (이)라면
[4글자▾] 신호 보내기
아니면
[3글자▾] 신호 보내기
⚑ 클릭했을 때
무한 반복하기
만약 ((답)의 길이) = (4) (이)라면
만약 (클릭하는 순서) = (5) (이)라면
문제 만들기
[점수▾] 을(를) (1)만큼 바꾸기
[클릭하는 순서▾] 을(를) (1)로 정하기
만약 ((답)의 길이) = (3) (이)라면
만약 (클릭하는 순서) = (4) (이)라면
문제 만들기
[점수▾] 을(를) (1)만큼 바꾸기
[클릭하는 순서▾] 을(를) (1)로 정하기
정의하기 3글자 순서 정하기
[선택한 순서▾] 을(를) ((1) 부터 ([순서▾]의 항목 수) 사이의 난수)로 정하기
[1번▾] 을(를) ([순서▾]의 (선택한 순서)번째 항목)로 정하기
[순서▾]의 (선택한 순서)번째 항목 삭제하기
[선택한 순서▾] 을(를) ((1) 부터 ([순서▾]의 항목 수) 사이의 난수)로 정하기
[2번▾] 을(를) ([순서▾]의 (선택한 순서)번째 항목)로 정하기
[순서▾]의 (선택한 순서)번째 항목 삭제하기
[선택한 순서▾] 을(를) ((1) 부터 ([순서▾]의 항목 수) 사이의 난수)로 정하기
[3번▾] 을(를) ([순서▾]의 (선택한 순서)번째 항목)로 정하기
[순서▾]의 (선택한 순서)번째 항목 삭제하기
[4번▾] 을(를) (0)로 정하기
[게임 시작▾] 신호를 받았을 때
문제 만들기
[게임 끝▾] 신호를 받았을 때
((여러분의 점수는 ) 와(과) (점수) 결합하기) 말하기
[other scripts in sprite▾] 멈추기
4번
[4글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
보이기
((답)의 (4번)번째 글자) 말하기
[3글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
숨기기
() 말하기
이 스프라이트를 클릭했을 때
만약 (4번) = (클릭하는 순서) (이)라면
숨기기
[클릭하는 순서▾] 을(를) (1)만큼 바꾸기
[pop▾] 재생하기
아니면
[틀렸다▾] 신호 보내기
[틀렸다▾] 신호를 받았을 때
보이기
[클릭하는 순서▾] 을(를) (1)로 정하기
[게임 시작▾] 신호를 받았을 때
y좌표를 (-140) (으)로 정하기
무한 반복하기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (100)만큼 바꾸기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (-100)만큼 바꾸기
[게임 끝▾] 신호를 받았을 때
[other scripts in sprite▾] 멈추기
1번
⚑ 클릭했을 때
[클릭하는 순서▾] 을(를) (1)로 정하기
[기다리는 시간▾] 을(를) (0.5)로 정하기
[4글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
보이기
((답)의 (1번)번째 글자) 말하기
[3글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
보이기
((답)의 (1번)번째 글자) 말하기
이 스프라이트를 클릭했을 때
만약 (1번) = (클릭하는 순서) (이)라면
숨기기
[클릭하는 순서▾] 을(를) (1)만큼 바꾸기
[pop▾] 재생하기
아니면
[틀렸다▾] 신호 보내기
[틀렸다▾] 신호를 받았을 때
보이기
[클릭하는 순서▾] 을(를) (1)로 정하기
[게임 시작▾] 신호를 받았을 때
y좌표를 (-140) (으)로 정하기
무한 반복하기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (100)만큼 바꾸기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (-100)만큼 바꾸기
[게임 끝▾] 신호를 받았을 때
[other scripts in sprite▾] 멈추기
2번
[4글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
보이기
((답)의 (2번)번째 글자) 말하기
이 스프라이트를 클릭했을 때
만약 (2번) = (클릭하는 순서) (이)라면
숨기기
[클릭하는 순서▾] 을(를) (1)만큼 바꾸기
[pop▾] 재생하기
아니면
[틀렸다▾] 신호 보내기
[3글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
보이기
((답)의 (2번)번째 글자) 말하기
[틀렸다▾] 신호를 받았을 때
보이기
[클릭하는 순서▾] 을(를) (1)로 정하기
[게임 시작▾] 신호를 받았을 때
y좌표를 (-140) (으)로 정하기
무한 반복하기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (100)만큼 바꾸기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (-100)만큼 바꾸기
[게임 끝▾] 신호를 받았을 때
[other scripts in sprite▾] 멈추기
3번
이 스프라이트를 클릭했을 때
만약 (3번) = (클릭하는 순서) (이)라면
숨기기
[클릭하는 순서▾] 을(를) (1)만큼 바꾸기
[pop▾] 재생하기
아니면
[틀렸다▾] 신호 보내기
[4글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
보이기
((답)의 (3번)번째 글자) 말하기
[3글자▾] 신호를 받았을 때
(기다리는 시간)초 기다리기
보이기
((답)의 (3번)번째 글자) 말하기
[틀렸다▾] 신호를 받았을 때
보이기
[클릭하는 순서▾] 을(를) (1)로 정하기
[게임 시작▾] 신호를 받았을 때
y좌표를 (-140) (으)로 정하기
무한 반복하기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (100)만큼 바꾸기
((1) 부터 (2) 사이의 난수)초 기다리기
y좌표를 (-100)만큼 바꾸기
[게임 끝▾] 신호를 받았을 때
[other scripts in sprite▾] 멈추기
진짜 소스: 4.재미있는 말놀이를 해요.sb2 · 172블록
도전!
힌트를 하나 더 넣어서 나만의 말놀이 문제를 만들어 보세요!


좋아요! 엘리오와 함께 생각이 톡톡 튀는 게임을 만들었어요 🎉