Python 으로 어린 시절 뱀 을 탐식 하 는 작은 게임 기능 을 실현 하 는 인 스 턴 스 코드
비록 뱀 을 탐식 한 역 사 는 상대 적 으로 오래 되 었 지만 매우 완강 한 생명력 을 가지 고 오랫동안 쇠퇴 하지 않 는 다.그 중에서 중요 한 원인 은 바로 게임 업 체 가 끊임없이 이 를 갱신 하고 교체 하 는 것 이다.현재 이 게임 은 게임 장면,규칙 등 이 모두 매우 풍부 해 졌 다.
다음은 파 이 썬 을 통 해 이 작은 게임 을 간단하게 실현 하 는 방법 을 살 펴 보 자.
규칙.
우선 제3자 라 이브 러 리 pygame 을 설치 하고 사용
pip install pygame
하면 된다.➢게임 메 인 인터페이스
SCREEN_X = 500
SCREEN_Y = 500
screen_size = (SCREEN_X, SCREEN_Y)
screen = pygame.display.set_mode(screen_size)
pygame.display.set_caption(' ')
탐식 하 다.초기 화
def __init__(self):
self.dirction = pygame.K_RIGHT
self.body = []
이동 하 다.
def addNode(self):
left, top = (0, 0)
if self.body:
left, top = (self.body[0].left, self.body[0].top)
node = pygame.Rect(left, top, 20, 20)
if self.dirction == pygame.K_LEFT:
node.left -= 20
elif self.dirction == pygame.K_RIGHT:
node.left += 20
elif self.dirction == pygame.K_UP:
node.top -= 20
elif self.dirction == pygame.K_DOWN:
node.top += 20
self.body.insert(0, node)
def delNode(self):
self.body.pop()
방향 을 바꾸다
def changeDirection(self, curkey):
LR = [pygame.K_LEFT, pygame.K_RIGHT]
UD = [pygame.K_UP, pygame.K_DOWN]
if curkey in LR + UD:
if (curkey in LR) and (self.dirction in LR):
return
if (curkey in UD) and (self.dirction in UD):
return
self.dirction = curkey
사망 판단
def isDead(self):
#
if self.body[0].x not in range(SCREEN_X):
return True
if self.body[0].y not in range(SCREEN_Y):
return True
#
if self.body[0] in self.body[1:]:
return True
return False
음식물음식 을 투하 하 다
def set(self):
if self.rect.x == -20:
allpos = []
for pos in range(20, SCREEN_X - 20, 20):
allpos.append(pos)
self.rect.left = random.choice(allpos)
self.rect.top = random.choice(allpos)
print(self.rect)
음식 을 먹 어 치우다
def remove(self):
self.rect.x = -20
텍스트 표시표시 방법
def show_text(screen, pos, text, color, font_bold=False, font_size=30, font_italic=False):
#
cur_font = pygame.font.SysFont(" ", font_size)
#
cur_font.set_bold(font_bold)
#
cur_font.set_italic(font_italic)
#
text_fmt = cur_font.render(text, 1, color)
#
screen.blit(text_fmt, pos)
디 스 플레이 점수
show_text(screen, (50, 400), 'scores: ' + str(scores), (103, 213, 213))
사망 알림 보이 기
show_text(screen, (150, 50), 'GAME OVER', (227, 29, 18), False, 50)
show_text(screen, (140, 100), "Press space to try again", (0, 0, 22), False, 30)
음식 을 먹다뱀 이 음식 을 먹 으 면 뱀의 길이 와 점 수 를 늘 리 고 음식 이 사라 지면 다시 음식 을 넣는다.
if food.rect == snake.body[0]:
scores += 1
food.remove()
snake.addNode()
#
food.set()
➢최종 효과포장 하 다.
포장 은 pyinstaller 를 사용 하여 구체 적 으로 참고Python 으로 어린 시절 게임 러시아 블록 실현
포장
파 이 썬 으로 뱀 을 게 걸 스 럽 게 먹 는 어린 시절 의 게임 기능 을 실현 하 는 인 스 턴 스 코드 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 파 이 썬 뱀 을 게 걸 스 럽 게 먹 는 게임 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.