主要变更是添加土拨鼠,要注意添加时位置不能重复
图片位置还是大家自己去改,图片位置在第277行
self.marmot_image = pygame.image.load(‘spiders/marmot.png’)
'''打地鼠游戏v1.6'''
'''
1. 创建土拨鼠类并加载土拨鼠图片
2. 实现土拨鼠随机出现在洞口
'''
# 导包导库导模块
import pygame, sys
from pygame import *
from math import sin, cos, radians
from datetime import datetime
import time
from random import randint, choice
# 游戏初始化
pygame.init()
# 常量
SCREENWIDTH = 800
SCREENHEIGHT = 800
SCREENSIZE = (SCREENWIDTH, SCREENHEIGHT)
CAPTION = '浣熊打地鼠v1.6'
# 颜色
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
LIGHT_BLUE = (0, 75, 255)
YELLOW = (255, 255, 0)
RED = (255, 0, 0)
PURPLE = (255, 0, 255)
# 创建主逻辑类
class MainGame(object):
'创建主逻辑类,包括窗口,游戏开始与结束的方法和事件的获取与相应'
# 创建主窗口
window = pygame.display.set_mode(SCREENSIZE)
# 设置标题
pygame.display.set_caption(CAPTION)
# 设置背景图案
background_image = pygame.image.load('spiders/background.png')
def __init__(self):
'初始成员变量'
pass
def response_event(self):
'提供事件获取与响应的方法'
# 获取事件列表
for event in pygame.event.get():
# 窗口右上角退出方法
if event.type == QUIT:
self.end_game()
# 获取键盘按键
keys = pygame.key.get_pressed()
# 按ESC键退出游戏
if keys[K_ESCAPE]:
self.end_game()
# 令锤子跟随鼠标移动,且保持鼠标总在锤子柄上
if event.type == MOUSEMOTION:
hammer.h_x, hammer.h_y = event.pos
hammer.h_x -= hammer.h_width * 0.8
hammer.h_y -= hammer.h_height * 0.8
hammer.h_pos = (hammer.h_x, hammer.h_y)
def start_game(self):
'''游戏主循环'''
while True:
# 用黑色刷新窗口
mainGame.window.blit(mainGame.background_image, (0, 0))
# 获取处理事件