基于python的小孩快跑躲避障碍游戏pygame库

​代码介绍

代码功能:<基于python的小孩快跑躲避障碍游戏pygame库>

游戏玩家控制一个奔跑的小孩,通过按键控制其跳跃从而躲避路上的障碍物石头

软件:PyCharm

语言:python

基于pygame,需要安装pygame库,可以通过‌Python的包管理器‌pip来完成。 具体的安装步骤如下:

1、打开命令行界面(在Windows是CMD,macOS和Linux中则是终端)。

2、输入安装命令:pip install pygame

代码下载

基于python的小孩快跑躲避障碍游戏pygame库_计算机代码资源下载代码介绍代码功能:<基于python的小孩快跑躲避障碍游戏pygame库>游戏玩家控制一个奔跑的小孩,通过按键控制其跳跃从而躲避路上的障碍物石头软件:PyCharm语言:python基于pygame,需要安装pygame库,可以通过‌Python的包管理器‌pip来完成。 具体的安装步骤如下:1、打开命令行界面(在Windows是CMD,macOS和Linux中则是终端)。2、输入安装icon-default.png?t=N7T8http://www.edacode.com/index.php?m=home&c=View&a=index&aid=915

工程文件

程序文件

程序编译

运行效果

部分代码展示:

import pygame
import time
import random
from itertools import cycle
from pygame.locals import *  # 导入pygame中的常量
SCREENHEIGHT = 250
SCREENWIDTH = 1000
FPS = 30  # 更新画面的时间
speed=6  #速度
# 定义背景类
class MyMap():
    def __init__(self,x,y):  # 构造函数
        self.bg=pygame.image.load(r'./img/bg01.png').convert_alpha()  # 进行图形判断,将背景与其相关的图片透明化
        self.x=x
        self.y=y
    def map_move(self):  # 滚动
        if self.x<-SCREENWIDTH+1:
            self.x=SCREENWIDTH
        else:
            self.x-=speed  # 每帧以5个像素,表示像素移动的距离
    def map_update(self):
            SCREEN.blit(self.bg,(self.x,self.y))
#把恐龙的图片加进来了,并且加上键盘监听器,比如当按下空格键时实现恐龙的跳跃动作。
#定义恐龙类
class Dragon(pygame.sprite.Sprite):
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.rect = pygame.Rect(0, 0, 0, 0)  # 小恐龙矩形图片的初始化,Rect(left,top,width,height)
        self.jumpHeight = 120   #角色向上运动的高度
        self.jumpState = False  # 跳跃状态,true为跳跃
        self.lowest_y = 70  # 最低坐标 背景高度-角色高度=250-180
        self.jumpValue = 0  # 跳跃增变量
        # 小恐龙跳跃动作播放图片,连续放三张图片,造成一种gif的感觉
        self.DragonIndex = 0
        self.DragonIndexGen = cycle([0,1,2,3])  # 引入的迭代工具
        # 加载恐龙图片,使用convert_alpha()背景图片才为透明,用convert则为黑色背景
        self.dragon_img = (
            pygame.image.load("img/p1.png").convert_alpha(),
            pygame.image.load("img/p2.png").convert_alpha(),
            pygame.image.load("img/p3.png").convert_alpha(),
            pygame.image.load("img/p4.png").convert_alpha(),
        )
        self.rect.size = self.dragon_img[0].get_size()
        print(self.rect.size)
        self.x = 50  # 绘制恐龙x坐标
        self.y = self.lowest_y  # 绘制恐龙y坐标
        self.rect.topleft = (self.x, self.y)
    def jump(self):
        self.jumpState = True
        print("jump方法正在执行")
    def move(self):
        if  self.jumpState== True:  # 起跳的时候
            if self.rect.y >= self.lowest_y:     # 如果站在地上
                self.jumpValue = -5  # 向上移动五个像素点
            if self.rect.y <= self.lowest_y - self.jumpHeight:  # 到顶后下降
                self.jumpValue = 5
            self.rect.y += self.jumpValue
            if self.rect.y >= self.lowest_y:  # 恐龙落地以后,跳跃状态改为False
                self.jumpState = False        # 关闭跳跃状态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值