以下是一個使用 Python 和?PyGame
庫在?PyCharm
中創建一個簡單的小游戲(貪吃蛇游戲)的示例代碼,希望對您有所幫助:
import pygame
import random# 基礎設置
# 屏幕高度
SCREEN_HEIGHT = 480
# 屏幕寬度
SCREEN_WIDTH = 600
# 小方格大小
GRID_SIZE = 20# 顏色設置
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
GREEN = (0, 255, 0)# 初始化 `PyGame`
pygame.init()# 創建屏幕
screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
pygame.display.set_caption("貪吃蛇游戲")# 游戲時鐘
clock = pygame.time.Clock()# 蛇的初始位置和速度
snake_pos = [200, 100]
snake_speed = [0, 0]# 食物的初始位置
food_pos = [random.randint(0, SCREEN_WIDTH // GRID_SIZE - 1) * GRID_SIZE,random.randint(0, SCREEN_HEIGHT // GRID_SIZE - 1) * GRID_SIZE]# 蛇的身體列表
snake_body = [[snake_pos[0], snake_pos[1]]]# 游戲結束標志
game_over = False# 游戲循環
while not game_over:for event in pygame.event.get():if event.type == pygame.QUIT:game_over = Trueif event.type == pygame.KEYDOWN:if event.key == pygame.K_UP and snake_speed[1]!= GRID_SIZE:snake_speed = [0, -GRID_SIZE]elif event.key == pygame.K_DOWN and snake_speed[1]!= -GRID_SIZE:snake_speed = [0, GRID_SIZE]elif event.key == pygame.K_LEFT and snake_speed[0]!= GRID_SIZE:snake_speed = [-GRID_SIZE, 0]elif event.key == pygame.K_RIGHT and snake_speed[0]!= -GRID_SIZE:snake_speed = [GRID_SIZE, 0]# 根據速度移動蛇頭snake_pos[0] += snake_speed[0]snake_pos[1] += snake_speed[1]# 判斷蛇是否吃到食物if snake_pos[0] == food_pos[0] and snake_pos[1] == food_pos[1]:food_pos = [random.randint(0, SCREEN_WIDTH // GRID_SIZE - 1) * GRID_SIZE,random.randint(0, SCREEN_HEIGHT // GRID_SIZE - 1) * GRID_SIZE]else:# 去除蛇尾del snake_body[0]# 判斷蛇是否撞到自己或邊界if [snake_pos[0], snake_pos[1]] in snake_body[1:]:game_over = Trueelif snake_pos[0] < 0 or snake_pos[0] >= SCREEN_WIDTH or snake_pos[1] < 0 or snake_pos[1] >= SCREEN_HEIGHT:game_over = True# 增加蛇的長度snake_body.append(list(snake_pos))# 繪制背景screen.fill(BLACK)# 繪制食物pygame.draw.rect(screen, GREEN, [food_pos[0], food_pos[1], GRID_SIZE, GRID_SIZE])# 繪制蛇for pos in snake_body:pygame.draw.rect(screen, WHITE, [pos[0], pos[1], GRID_SIZE, GRID_SIZE])# 刷新屏幕pygame.display.flip()# 控制游戲幀率clock.tick(10)# 退出游戲
pygame.quit()
您可以在?PyCharm
中運行這段代碼,開始您的貪吃蛇游戲。當然,這只是一個簡單的示例,您可以根據自己的需求對游戲進行擴展和完善。希望這個示例對您有幫助!如果您還有其他問題,歡迎繼續提問
更多小游戲開發需求歡迎私聊交流