使用 Python Kivy 开发 APP 之:创建一个小游戏玩玩 2024-08-03 12:50:15 Python除了做ai,还能干啥?其中放了张 Kivy 的图什么是 Kivy 呢简单点说它就是一个 Python 库你可以使用它开发 APP像你常看到的用户界面程序多点触控程序都可以使用它来实现而且在不同的操作系统中的APP都可以使用它来实现刚好有 b 友问起“怎么玩呢”那么接下来就是学习 Python 的正确姿势 (此处应该刷一波:爷青回)今天咱们来玩下官方的一个小例子使用 Kivy 创建一个游戏 在你的项目中创建一个 main.py然后导入 Kivy创建一个 App 实例 这样就是最简单的使用不过现在运行起来啥也没有就一个黑乎乎的界面 我们来添加一下组件导入 UI 库 Widget创建一个组件 Widget 实例类然后在 MyAPP 中调用它 这样我们就可以在MyGame中写界面了一般来说UI分离出来写会好一点我们可以创建一个 kv 文件分离出来专门写 UI比如我们想在 MyGame 中画一条白色金箍棒那么就可以这样创建一个 my.kv在里面定义 MyGame然后画一个 canvas定义好位置和大小 运行起来就是这样铛铛档 接着在两边添加分数可以使用 Label 组件来定义文本 默认为 0 分 接下来添加个球可以创建一个球类 同样的在 kv 文件中添加组件可以在 MyGame 中添加 MyBall 这样就可以在当前对象画球了~ 看,球 那怎么让它动起来呢我们知道要让球动起来就是以一定的速度不停的改变球的位置 可以先在 x 和 y 轴定义它的速度那么要让球动起来就是要不停的去改变球的位置我们可以使用 Clock 来创建定时调用比如我们要一秒调用 60 次 update就可以这样 好爽啊 恩那么我们在 update 方法中不断改变球的位置就可以了在 kv 文件中定义 ball 对象 id绑定好 这样我们就可以在 py 中拿到球对象了 然后就可以在 update 方法中让球运动起来如果碰到边边角角就让它反向操作 我们还可以定义一个发球方法也就是让它从中间随机发球 方法写好了那么现在就可以让它跑起来啦 走起 接下来把左右两个玩家的棒棒画出来同样的我们可以创建一个棒棒对象 接着在 kv 中定义棒棒的大小 接着在 MyGame 中定义这个对象 这样左边的棒棒就出来啦 棒棒对象可以共用右边的棒棒只需要修改下位置就可以了 这样就都有两根棒棒了 有了棒棒之后就要来控制它了我们要去拖动棒棒就要知道拖动的位置可以使用 on_touch_move来监听拖动的位置 这样我们就可以拿到用户触发的坐标位置 我们只需要让棒棒上下移动就可以了所以可以通过判断用户点击位置如果是左边就改变左边棒棒的位置 y如果是右边就改变右边棒棒的位置 y 像这样 那么接下来就是接球了我们主要判断的是球是不是和棒棒碰撞了如果是我们让球反弹和改变速度可以使用 collide_widget 方法判断 这里主要是当它们碰撞了那就拿到球的速度然后每次反弹的时候就让球加速这样如果两个用户一直接到球那么球的移动速度就起飞我们在 update 方法中不断的调用它进行判断 这时候运行起来是这样的 接下来就是记分了没接到的就对方加分然后重新发球可以定义一个 score 变量 然后在 kv 中绑定这个变量 接着我们在 update 方法中判断一下没接到就对方加一分然后重新发球 运行一波 哈哈一个简单的游戏就完成啦过程是不是挺好玩的你也去试试吧关于 Kivy有时间我会继续给你讲解那么我们下回见啦peace!更多happy进入小帅b公众号 赞 (0) 相关推荐 Py之Kivy:Python库之Kivy的简介、安装、使用方法之详细攻略 Py之Kivy:Python库之Kivy的简介.安装.使用方法之详细攻略 Kivy的简介 Kivy是一套基于Python编写的类似安卓界面风格的界面库.它支持Windows.Linux.Android ... 将打飞机游戏打包成 exe 发现很多朋友在写了 pygame 的打飞机游戏之后,都很想打包成 exe 文件分享给别人玩.但是在打包的过程中,可能遇到一些问题.今天我就来整理一下 pygame 打包 exe 的一些注意事项. 另外 ... Python可以开发IOS吗?Python基础! 在大家的印象中,Python是一门应用领域非常广泛的编程语言,可以说无所不能,那么Python可以开发IOS或安卓APP吗?我想很多人都好奇这个问题,接下来我们一起来看看. 当然可以,Python是可 ... Python 常用的GUI框架都有哪些? Graphical User Interface,简称 GUI,又称图形化用户接口,所谓的GUI编程,指的是用户不需要输入代码指令,只通过图形界面的交互就可以操作软件功能.今天番茄加速就来说说Pyth ... Python Web开发哪些模块好用?这几类必知! 关于Python Web开发和图形用户界面的模块有哪些?今天小编通过这篇文章为大家整理了一些常用的模块,我们一起来看看吧. Web开发: 1. Requests:Python内置模块(urllib和u ... 5 分钟带你入门 kivy 第一时间获取 Python 技术干货! 阅读文本大概需要 5 分钟. 上篇 文章 利用 kivy 语言结合 Airport,一款包含 Python 解释器.Python 常用依赖库的应用,实现了移动端 ... python测试开发django-20.添加创建时间DateTimeField 前言 我们在admin后台发布一篇文章的时候,一般会有创建时间和最后更新时间这2个字段,创建时间就是第一次编辑文章的时候自动添加的,最后更新时间就是每次修改文章的内容后自动更新 在models.py建 ... 安信Windows驱动开发教程:创建一个简单的 Windows 11 应用 本文将引导您完成创建简单 Windows 11 应用程序的步骤,以便您可以开始使用 Windows 11 的新视觉效果和功能。我们将在此处构建的应用程序只是一些已更新 安信Windows驱动开发教程:创建一个简单的 Windows 11 应用 本文将引导您完成创建简单 Windows 11 应用程序的步骤,以便您可以开始使用 Windows 11 的新视觉效果和功能 ... 安信Windows驱动开发教程:创建一个简单的 Windows 11 应用 安信Windows驱动开发教程:创建一个简单的 Windows 11 应用 本文将引导您完成创建简单 Windows 11 应用程序的步骤,以便您可以开始使用 Windows 11 的新视觉效果和功能 ... 用 python 写一个小游戏 今天玩点别的吧 都说 Python 除了生孩子 什么都能干 咱们今天 就用 Python 写个小游戏 贪吃蛇 想必大家都玩过这玩意 有没有想过 你自己来实现一个这样的游戏呢 那么接下来就是 学习 py ... 感动 | 5分钟可以做什么?浏览几条手机新闻,看一本杂志或玩一个小游戏...... 多等5分钟 (做人与处世201921期) 这个故事像一个美好的童话,发生在湖南怀化,故事的主人公就是公交车司机杨骐铭. 每天晚上22点10分,杨骐铭驾驶15路公交车准时驶离三中站台,这趟车是15路车经 ... 这种老年病提前10年就有征兆!教你一个小游戏,自测有没有患病风险~ 今天是世界帕金森病日. 提到这个病,小编就会想到拳王阿里.他使用拳头来给自己带来荣誉,而帕金森病却轻易拿走了他的武器. 在第26届夏季奥林匹克运动会上,有一个至今令人难忘的场景.曾在拳台所向披靡的拳王 ... 微信为什么要搞一个小游戏? 众厂关于 H5 游戏市场的争夺,自 2014 年以来,一直就没有停止过.但一直也没有尘埃落定,最终花落谁家,鹿死谁手现在还不好讲.微信推出小程序,继而推出小游戏,只是腾讯数年来在 H5 市场企业战略的 ... 熬夜写了一个小游戏,向SpaceX聊表敬意 题图是我长久放在桌面上的一张图片. 这张照片的名字叫做 Pale Blue Dot(暗淡蓝点),是旅行者1号在距地球64亿公里回望太阳系时所拍下的.照片右侧中部有一个隐约可见的小蓝点,那就是地球. 我 ... 弓箭手大作战:这款APP弓箭手出微信小游戏了。 <弓箭手大作战> 关键词:休闲.放置.模拟经营.开店.微信小游戏.放置.挂机.微信小游戏. 画风:Q萌 推荐星数:3.5星 难度星数:2.5星 沐沐简评:<弓箭手大作战>是一款 ...