[python] 파이썬으로 스네이크 게임 만들기
스네이크 게임은 간단하지만 재미있는 클래식 게임입니다. 이번에는 파이썬과 파이게임(Pygame) 라이브러리를 사용하여 스네이크 게임을 만들어보겠습니다.
파이게임(Pygame) 라이브러리 설치
먼저 파이게임 라이브러리를 설치해야 합니다. 아래의 명령을 사용하여 파이게임을 설치할 수 있습니다.
pip install pygame
스네이크 게임 구현
스네이크 게임을 구현하기 위해서 pygame
라이브러리를 import 하고, 게임의 필수 요소들을 만들어야 합니다. 아래는 스네이크 게임을 구현하는 간략한 예제 코드입니다.
import pygame
import time
pygame.init()
# 게임 화면 크기 설정
dis_width = 800
dis_height = 600
dis = pygame.display.set_mode((dis_width, dis_height))
# 스네이크 색상 및 초기 위치 설정
snake_block = 10
snake_speed = 30
x1 = dis_width / 2
y1 = dis_height / 2
x1_change = 0
y1_change = 0
# 스네이크 이동 함수
def gameLoop():
game_over = False
game_close = False
while not game_over:
while game_close == True:
dis.fill((255,255,255))
font_style = pygame.font.SysFont(None, 50)
message = font_style.render("You Lost! Press C-Play Again or Q-Quit", True, (255,100,100))
dis.blit(message, [dis_width//6, dis_height//3])
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_q:
game_over = True
game_close = False
if event.key == pygame.K_c:
gameLoop()
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
x1_change = -snake_block
y1_change = 0
elif event.key == pygame.K_RIGHT:
x1_change = snake_block
y1_change = 0
elif event.key == pygame.K_UP:
y1_change = -snake_block
x1_change = 0
elif event.key == pygame.K_DOWN:
y1_change = snake_block
x1_change = 0
# 벽을 만나면 게임 오버
if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0:
game_close = True
x1 += x1_change
y1 += y1_change
dis.fill((255,255,255))
pygame.draw.rect(dis, (0, 0, 255), [x1, y1, snake_block, snake_block])
pygame.display.update()
time.sleep(0.1)
gameLoop()
pygame.quit()
quit()
이 코드를 실행하면 스네이크 게임이 실행됩니다. 방향키를 사용하여 스네이크를 컨트롤하고, 벽이나 스네이크 자신의 몸에 닿으면 게임이 종료됩니다.
이렇게 간단한 파이썬 코드로 스네이크 게임을 만들 수 있습니다. 파이게임 라이브러리의 강력한 기능을 활용하면 더 다채로운 스네이크 게임을 구현할 수 있습니다. 즐겁게 코딩하세요!