文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

基于Python+Pygame如何实现变异狗大战游戏

2023-07-05 08:32

关注

这篇文章主要介绍了基于Python+Pygame如何实现变异狗大战游戏的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇基于Python+Pygame如何实现变异狗大战游戏文章都会有所收获,下面我们一起来看看吧。

一、准备环境 

1)环境安装 

本文用到的环境如下——

 Python3、Pycharm社区版,pygame其他自带的库只要安装完 Python就可以直接使用了

 一般安装:pip install +模块名 

 镜像源安装:pip install -i pypi.douban.com/simple/+模块名…

二、代码展示

1)导入库

import pygame, sysfrom pygame.locals import *

2)主程序

def pygame_run():    pygame.init()    _display_surf = pygame.display.set_mode((480, 320))    pygame.display.set_caption('py梦')    _font_type = pygame.font.match_font('Microsoft YaHei')    # 敌方精灵状态,文字显示    _ord_pym_rect = pygame.Rect(-260, 0, 220, 50)    # 敌方精灵名字,文字显示设置    _ord_pym_name = pygame.font.Font(_font_type, 16)    _ord_pym_name_surf_obj = _ord_pym_name.render("lv10:它狗", True, BLACK, None)    _ord_pym_name_rect = _ord_pym_name_surf_obj.get_rect()    _ord_pym_name_rect.left = -200    _ord_pym_name_rect.top = 0    # 敌方精灵血量,文字显示设置    _ord_pym_blood = pygame.font.Font(_font_type, 16)    _ord_pym_blood_surf_obj = _ord_pym_blood.render("血量:----------[69/69]", True, BLACK, None)    _ord_pym_blood_rect = _ord_pym_blood_surf_obj.get_rect()    _ord_pym_blood_rect.left = -200    _ord_pym_blood_rect.top = 20    # 敌方精灵贴图显示设置    _ord_pym_img = pygame.image.load('dog1.png')    _ord_pym_img_top = 20    _ord_pym_img_left = 320+220    # 我方精灵状态,文字显示设置    _my_pym_rect = pygame.Rect(260, 170, 220, 50)    # 我方精灵名字,文字显示设置    _my_pym_name = pygame.font.Font(_font_type, 16)    _my_pym_name_surf_obj = _my_pym_name.render("lv18:我狗", True, BLACK, None)    _my_pym_name_rect = _my_pym_name_surf_obj.get_rect()    _my_pym_name_rect.left = 480    _my_pym_name_rect.top = 170    # 我方精灵血量,文字显示设置    _my_pym_blood = pygame.font.Font(_font_type, 16)    _my_pym_blood_surf_obj = _my_pym_blood.render("血量:----------[99/99]", True, BLACK, None)    _my_pym_blood_rect = _my_pym_blood_surf_obj.get_rect()    _my_pym_blood_rect.left = 480    _my_pym_blood_rect.top = 190    # 我方精灵贴图显示设置    _my_pym_img = pygame.image.load('dog2.png')    _my_pym_img_top = 80    _my_pym_img_left = 20-220    # 对战面板,显示设置    _select_rect = pygame.Rect(480, 220, 220, 95)    # 战斗,文字显示设置    _select_font_1 = pygame.font.Font(_font_type, 30)    _select_font_1_surf_obj = _select_font_1.render("战斗", True, BLACK, None)    _select_font_1_rect = _select_font_1_surf_obj.get_rect()    _select_font_1_rect.left = 480    _select_font_1_rect.top = 220    # 道具,文字显示设置    _select_font_2 = pygame.font.Font(_font_type, 30)    _select_font_2_surf_obj = _select_font_2.render("道具", True, BLACK, None)    _select_font_2_rect = _select_font_2_surf_obj.get_rect()    _select_font_2_rect.left = 580    _select_font_2_rect.top = 220    # 精灵,文字显示设置    _select_font_3 = pygame.font.Font(_font_type, 30)    _select_font_3_surf_obj = _select_font_3.render("精灵", True, BLACK, None)    _select_font_3_rect = _select_font_3_surf_obj.get_rect()    _select_font_3_rect.left = 480    _select_font_3_rect.top = 270    # 逃跑,文字显示设置    _select_font_4 = pygame.font.Font(_font_type, 30)    _select_font_4_surf_obj = _select_font_4.render("逃跑", True, BLACK, None)    _select_font_4_rect = _select_font_4_surf_obj.get_rect()    _select_font_4_rect.left = 580    _select_font_4_rect.top = 270    while True:        _display_surf.fill(WHITE)        pygame.draw.rect(_display_surf, BLACK, _select_rect, 1)        pygame.draw.rect(_display_surf, WHITE, _my_pym_rect, 0)        _display_surf.blit(_ord_pym_img, (_ord_pym_img_left, _ord_pym_img_top))        _display_surf.blit(_my_pym_img, (_my_pym_img_left, _my_pym_img_top))        _display_surf.blit(_ord_pym_name_surf_obj, _ord_pym_name_rect)        _display_surf.blit(_ord_pym_blood_surf_obj, _ord_pym_blood_rect)        _display_surf.blit(_my_pym_name_surf_obj, _my_pym_name_rect)        _display_surf.blit(_my_pym_blood_surf_obj, _my_pym_blood_rect)        _display_surf.blit(_select_font_1_surf_obj, _select_font_1_rect)        _display_surf.blit(_select_font_2_surf_obj, _select_font_2_rect)        _display_surf.blit(_select_font_3_surf_obj, _select_font_3_rect)        _display_surf.blit(_select_font_4_surf_obj, _select_font_4_rect)        if _select_rect.left != 260:            _select_rect.left = _select_rect.left - 5            _select_font_1_rect.left = _select_font_1_rect.left - 5            _select_font_2_rect.left = _select_font_2_rect.left - 5            _select_font_3_rect.left = _select_font_3_rect.left - 5            _select_font_4_rect.left = _select_font_4_rect.left - 5            _my_pym_name_rect.left = _my_pym_name_rect.left - 5            _my_pym_blood_rect.left = _my_pym_blood_rect.left - 5            _ord_pym_name_rect.left = _ord_pym_name_rect.left + 5            _ord_pym_blood_rect.left = _ord_pym_blood_rect.left + 5            _ord_pym_img_left = _ord_pym_img_left - 5            _my_pym_img_left = _my_pym_img_left + 5        for _event in pygame.event.get():            if _event.type == QUIT:                pygame.quit()                sys.exit()        pygame.display.update()        _fps_Clock.tick(FPS)if __name__ == '__main__':    pygame_run()

关于“基于Python+Pygame如何实现变异狗大战游戏”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“基于Python+Pygame如何实现变异狗大战游戏”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯