Back to Course
파이썬 소개
0% Complete
0/0 Steps
-
코딩의 기초소단원 1: 파이썬 소개4 Topics|1 Quiz
-
수업 2: 파이썬을 사용한 애니메이션4 Topics|1 Quiz
-
수업 3: 알고리즘 및 순서도5 Topics|1 Quiz
-
파이썬을 사용한 프로그래밍 개념수업 4: 변수 및 산술 연산자6 Topics|1 Quiz
-
수업 5: 파이썬의 함수6 Topics|1 Quiz
-
소단원 6: 조건부 프로그래밍5 Topics|1 Quiz
-
수업 7: 파이썬의 루프 - While 루프3 Topics|1 Quiz
-
수업 8: 파이썬의 루프 - For 루프3 Topics|1 Quiz
-
수업 9: 문자열 작업5 Topics|1 Quiz
-
수업 10: 파이썬의 목록4 Topics|1 Quiz
-
파이썬 게임수업 11: 미로 게임의 딱정벌레4 Topics
-
캡스톤 프로젝트수업 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 루프 위에 추가됩니다.
게임 조건 프로그래밍
모든 게임에는 따라야 할 특정 규칙과 조건이 있으므로 게임을 플레이하는 데 진정한 재미가 있습니다. 우리 게임에서도 더 재미있게 만들기 위해 간단한 조건을 제공합시다!
- 딱정벌레는 생성된 미로 내에서 이동해야 하며, 미로의 어떤 선에 닿도록 이동하려고 하면 딱정벌레는 미로 내부의 현재 위치와 관계없이 시작 위치인 원래 위치로 돌아갑니다.
- 딱정벌레가 사과에 닿으면 게임이 끝납니다.
이를 위해 스프라이트에 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
과제 업로드
코드를 완성하고 과제를 제출하십시오.
과정을 마친 후 수료증을 받으려면 과제를 제출해야 합니다.
과제를 업로드하려면 아래 단계를 따르세요.
- 먼저 Pictoblox 파일을 선택해야 하므로 Browse를 클릭합니다.
- .sb3 파일을 선택합니다.
- 그리고 Upload 버튼을 클릭합니다.
행운을 빕니다! ????