Back to Course

파이썬 소개

0% Complete
0/0 Steps
  1. 코딩의 기초
    소단원 1: 파이썬 소개
    4 Topics
    |
    1 Quiz
  2. 수업 2: 파이썬을 사용한 애니메이션
    4 Topics
    |
    1 Quiz
  3. 수업 3: 알고리즘 및 순서도
    5 Topics
    |
    1 Quiz
  4. 파이썬을 사용한 프로그래밍 개념
    수업 4: 변수 및 산술 연산자
    6 Topics
    |
    1 Quiz
  5. 수업 5: 파이썬의 함수
    6 Topics
    |
    1 Quiz
  6. 소단원 6: 조건부 프로그래밍
    5 Topics
    |
    1 Quiz
  7. 수업 7: 파이썬의 루프 - While 루프
    3 Topics
    |
    1 Quiz
  8. 수업 8: 파이썬의 루프 - For 루프
    3 Topics
    |
    1 Quiz
  9. 수업 9: 문자열 작업
    5 Topics
    |
    1 Quiz
  10. 수업 10: 파이썬의 목록
    4 Topics
    |
    1 Quiz
  11. 파이썬 게임
    수업 11: 미로 게임의 딱정벌레
    4 Topics
  12. 캡스톤 프로젝트
    수업 12: 캡스톤 프로젝트
Lesson 11, Topic 3
In Progress

활동 2: 프로그램 게임 조건

Lesson Progress
0% Complete

딱정벌레 시작 위치 설정

우리는 딱정벌레가 -150, -150에서 50% 크기와 방향이 위를 향하도록 하고 싶습니다. 다음 코드를 사용하여 이를 수행할 수 있습니다.

sprite.setdirection(0)
sprite.setsize(50)
sprite.gotoxy(-150, -150)

참고 : 이 코드는 동일한 프로그램과 while 루프 위에 추가됩니다.

게임 조건 프로그래밍

모든 게임에는 따라야 할 특정 규칙과 조건이 있으므로 게임을 플레이하는 데 진정한 재미가 있습니다. 우리 게임에서도 더 재미있게 만들기 위해 간단한 조건을 제공합시다!

  1. 딱정벌레는 생성된 미로 내에서 이동해야 하며, 미로의 어떤 선에 닿도록 이동하려고 하면 딱정벌레는 미로 내부의 현재 위치와 관계없이 시작 위치인 원래 위치로 돌아갑니다.
  2. 딱정벌레가 사과에 닿으면 게임이 끝납니다.

이를 위해 스프라이트에 istouchingcolor((R, G, B)) 함수를 사용합니다. 이 함수는 스프라이트가 지정된 색상에 닿는지 여부를 테스트합니다.

벽을 만지다

벽 색상은 검은색이며 RGB 값은 (0, 0, 0)입니다. 그래서 우리는 딱정벌레가 벽에 닿는지 확인하기 위해 while 루프 내부에 조건을 추가할 것입니다.

  if (sprite.istouchingcolor((0, 0, 0))):

조건이 참이면 딱정벌레는 초기 위치로 이동해야 합니다.

  if (sprite.istouchingcolor((0, 0, 0))):
    sprite.setdirection(0)
    sprite.gotoxy(-150, -150)

지금까지 코드를 테스트합니다.

만지는 사과

사과 색상은 빨간색이며 RGB 값은 (255, 0, 0)입니다. 그래서 우리는 딱정벌레가 사과에 닿았는지 확인하기 위해 while 루프 내부에 조건을 추가할 것입니다.

  if (sprite.istouchingcolor((255, 0, 0))):

조건이 참이면 게임이 종료됩니다.

  if (sprite.istouchingcolor((255, 0, 0))):
    sprite.say('Game Over', 2)
    break

코드 테스트:

완전한 코드

전체 코드는 다음과 같습니다.

sprite = Sprite('Beetle')

sprite.setdirection(0)
sprite.setsize(50)
sprite.gotoxy(-150, -150)

while 1:
  if (sprite.iskeypressed('up arrow')):
    sprite.setdirection(0)
    sprite.move(5)
    
  if (sprite.iskeypressed('down arrow')):
    sprite.setdirection(180)
    sprite.move(5)
    
  if (sprite.iskeypressed('left arrow')):
    sprite.setdirection(-90)
    sprite.move(5)
    
  if (sprite.iskeypressed('right arrow')):
    sprite.setdirection(90)
    sprite.move(5)
    
  if (sprite.istouchingcolor((0, 0, 0))):
    sprite.setdirection(0)
    sprite.gotoxy(-150, -150)
    
  if (sprite.istouchingcolor((255, 0, 0))):
    sprite.say('Game Over', 2)
    break

과제 업로드

코드를 완성하고 과제를 제출하십시오.

과정을 마친 후 수료증을 받으려면 과제를 제출해야 합니다.

과제를 업로드하려면 아래 단계를 따르세요.

  1. 먼저 Pictoblox 파일을 선택해야 하므로 Browse를 클릭합니다.
  2. .sb3 파일을 선택합니다.
  3. 그리고 Upload 버튼을 클릭합니다.

행운을 빕니다! ????