python讨论qq群:996113038


代码及相关资源获取:

后台回复“game5”获取源代码。


开发工具:

python3.6.4。

需要安装的模块或者库:

random模块。

turtle模块。

math模块。

os模块

collections模块。


效果演示:


基本原理

一:游戏设定:

1:在游戏界面内,蓝色部分是可以移动的通道。

2:黄色的大圆圈代表的是角色本身,红色的大圆圈代表的是敌人。

3:小黄点代表的是食物(豆子),我们的角色需要吃掉小黄点。

4:我们的角色被敌方碰到以后就会死亡。


部分代码

我们首先要设定游戏界面。游戏背景分为蓝色的通道和黑色的障碍。我们可以用一个由0和1组成的矩阵表示这个游戏背景。

然后用下列代码画出来:

def world():"Draw world using path."bgcolor('black')path.color('blue')for index in range(len(tiles)):tile = tiles[index]if tile > 0:x = (index % 20) * 20 - 200y = 180 - (index // 20) * 20square(x, y)if tile == 1:path.up()path.goto(x + 10, y + 10)path.dot(2, 'white')

由上面的代码可知,我们用的是for循环,判断每个点的值,然后根据这个值画出相应的颜色。这样下来,整个屏幕就显示了相应的游戏界面。

控制角色的移动,我们也是用“上下左右”键控制。但用的方法和以前不同。

这次我们是通过onkey函数的方式,来识别键盘操作。进而控制角色移动的方向。相比前四个游戏的控制方式,onkey方式更加方便。

onkey(lambda: change(5, 0), 'Right')
onkey(lambda: change(-5, 0), 'Left')
onkey(lambda: change(0, 5), 'Up')
onkey(lambda: change(0, -5), 'Down')

更多代码的细节,大家可以下载以后调试一下。

感谢大家观看。


参考资料:

https://github.com/grantjenks/free-python-games

扫描下方二维码,关注公众号

Python小游戏(五)吃豆人小游戏相关推荐

  1. 【毕业设计】 python小游戏设计 -吃豆人小游戏

    文章目录 0 前言 1 课题背景 2 实现效果 3 Pygame介绍 4 原理和实现 4.1 环境配置 4.3 创建游戏类 4.3 游戏地图 4.4 游戏主循环 5 最后 0 前言

  2. python小游戏毕设 吃豆人小游戏设计与实现 (源码)

    文章目录 0 项目简介 1 游戏介绍 2 实现效果 3 Pygame介绍 4 原理和实现 4.1 环境配置 4.3 创建游戏类 4.3 游戏地图 4.4 游戏主循环 5 最后 0 项目简介

  3. 可怜的博主跟小豆人杠起来啦!Python制作的吃豆人小游戏,快来围观!!

    相关文件 关注小编,私信小编领取哟! 当然别忘了一件三连哟~~ 对了大家可以关注小编的公众号哟~~ Python日志 开发环境 Python版本:3.6.4 相关模块: pygame模块: 以及一些P ...

  4. 基于C++控制台(Windows平台)的一个吃豆人小游戏

    PacManX --南京大学2019秋季学期 "高级程序设计 "课程设计一 基于C++控制台(Windows平台)的一个吃豆人小游戏 已实现的目标: 地图支持自定义编辑(可编辑地图 ...

  5. 整活~使用webAI做一个网页AR吃豆人小游戏

    一个好习惯,先给结论 使用网页端深度学习框架识别人脸,做一个AR吃豆人小游戏.吃豆人会随着人脸在镜头内的移动而移动,吃完全部豆子即为获胜. 在线体验地址:点我预览 代码地址:点我github 本文首发 ...

  6. 用JAVA实现吃豆人小游戏

    用JAVA实现吃豆人小游戏 游戏运行效果 Model.java Pacman.java 完整的游戏代码及资源文件 游戏运行效果 Model.java package pacman;import jav ...

  7. JS实现简单的吃豆人小游戏

    吃豆人小游戏 今天练习了一下JS,写了一个吃豆人的小demo Html以及CSS部分 首先定义一个div,用来存放吃豆人的一些元素,我们给他加一个id="game",然后我们在这d ...

  8. C语言实现吃豆人小游戏(转载)

    c语言实现吃豆人小游戏(转载) 游戏内还有一些bug,凑活着来玩一玩吧! #include <stdio.h> #include <iostream> #include < ...

  9. c语言吃豆人游戏怎么理解,python 实现简单的吃豆人游戏

    效果展示: 程序简介 1.使用pygame模组 2.在material目录下有一些素材 3.吃豆人的游戏主体 4.吃豆人怪物的AI(未使用深度学习) 主要代码 main.py import pygam ...

  10. python 吃豆人_pacman 人工智能编程 吃豆人小游戏 可实现智能寻路 吃豆 通关 - 下载 - 搜珍网...

    Berkeley人工智能吃豆人作业-Python/ Berkeley人工智能吃豆人作业-Python/再附带一份完整工程源码吧/ Berkeley人工智能吃豆人作业-Python/再附带一份完整工程源 ...

最新文章

  1. 人体姿态估计 自顶向下与自底向上
  2. kafka partition分配_Kafka架构原理,也就这么回事
  3. nodejs mysql access denied_Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’...
  4. 等式变换java解法
  5. python实现编辑距离以及回溯路径
  6. PC电脑版微信聊天记录迁移方法
  7. 【学习笔记】利用偏导求解不等式(拉格朗日数乘法)
  8. itext合并两个PDF流
  9. Neuralizing Regular Expressions for Slot Filling 神经网络转回自动机
  10. 2019辽宁公务员考试行测常识大全:公务员常识40000问(五十九)(2)
  11. 基于机智云物联网平台4孔插座开源
  12. mac外接键盘HOME,END键问题
  13. mac安装淘宝镜像cnpm,绝对有效!!!!!!
  14. 设计师思维 工程师思维_从设计思维到设计行为
  15. SDL是什么,能干什么,为什么我们要学习它?
  16. 你知道我们常说的“向前兼容”和“向后兼容”都是什么意思吗?
  17. 首次使用恒源云服务器【详细教程】
  18. BZOJ1066【SCOI2007】蜥蜴 网络流
  19. Android Content Providers(三)——Contacts Provider
  20. Ubuntu下安装拳皇97

热门文章

  1. UML及需求建模(智慧水电站运维中心技术博客)
  2. JavaScript-移动端(touch事件)
  3. 解决当APP退到后台,在由桌面点击图标时,APP重新创建,不会回到退出时活动的问题
  4. php ltrim redis,LTRIM命令_视频讲解_用法示例-redis编程词典-php中文网
  5. c语言怎么比较两个字母大小,编写一个C语言函数,比较两个字符串的大小
  6. 基于HTML的《尼尔机械纪元》游戏专题网页设计
  7. ERROR 1840 (HY000) @@GLOBAL.GTID_PURGED can only be set when @@GLOBAL.GTID_EXECUTED is empt
  8. 怎么取消苹果手机自动续费_优酷:优酷会员怎么取消自动续费
  9. mybatis+redis实现分布式缓存+缓存面试题
  10. 基于 MFC+Halcon 实现图像缩放、平移