
Pygame
was_a_coder
这个作者很懒,什么都没留下…
展开
-
Python——A Star寻路与游戏练手——保护金塔
上一篇实现并演示了A Star寻路算法以及增强了其通用性(可用于不同size的精灵寻路),本文将基于上文,实现一个金塔守护的小游戏。首先,少不了定义敌人和守护者。敌人和守护者有很多的共同特性,都有精灵的基本属性,还包含会自己找路,自己的战斗力和防御能力等。另外一点是所有精灵在抵达目的地的过程中都可能经历8个不同的方向的路径,需要展示精灵各个方向的行走动画。首先来说一下pygame动画通常使用的两种方式。方式一是将每一个方向的没一个动作单独用一个图片,这些图片按照一定的规则进行编号,然后在运动的过程中根据原创 2020-05-31 12:18:06 · 922 阅读 · 1 评论 -
Pygame——创建游戏地图
记得以前有几款很经典的游戏(红色警戒,命令与征服,英雄无敌),不小心暴漏了自己的年龄,因为知道并玩过这几款游戏的人可能还记得,里面有一个功能,就是自己编辑地图,在自己编辑的地图上玩游戏。当时觉得这个功能很炫酷,因为通常游戏场景都是游戏制作者给出的,玩家没得选。最近学习Python,觉得Pygame可以很轻松就实现这个功能,于是自己实现了一下。供感兴趣的朋友们惭愧,批评指正。废话不多说,说正事。既然是编辑地图,必须要有背景和地图上展示的元素已经元素在地图上的位置等信息。打码开始:地图元素类:cla原创 2020-05-23 18:41:27 · 4850 阅读 · 1 评论 -
Python游戏之Pygame——太空飞机大战(四)
上一篇(Python游戏之Pygame——太空飞机大战(三))完成了英雄战机和星空,那么基本上飞机大战的主要元素都已经完成,该是总结成功玩自己游戏的时候了。哦,差点忘了,Bullet类对于普通子弹和导弹发射来说是通用的,但是对于核弹,发射核弹部分当然也是相同的,但核弹爆炸的效果图以及杀伤情况就完全不同了。下面先给出展示核弹爆炸的方法:# 处理核弹爆炸,由于核弹爆炸属于特殊事件,放在类里处理不合OOP理念。当然也可以单独为核弹做一个类,不放在 Bullet 类中def nuclear_explosiin原创 2020-05-20 08:31:35 · 553 阅读 · 0 评论 -
Python游戏之Pygame——太空飞机大战(三)
上一篇(Python游戏之Pygame——太空飞机大战(二))完成了敌机类以及敌机坠毁时释放包裹类,这一篇将给出英雄战机类和处理。由于英雄战机是由游戏者操控的,所以要处理操控事件,比如往那个方向飞,发射子弹或者导弹,或者都发射,遇到敌机太多时还可以发射大boss——核弹,遇到很多子弹时通过变形躲子弹等。看起来很炫酷,下面开始打码。class HeroPlane(Sprite): def __init__(self, heroType, position, layerGroup, hPlaneGro原创 2020-05-19 20:04:07 · 422 阅读 · 0 评论 -
Python游戏之Pygame——太空飞机大战(二)
上一篇(Python游戏之Pygame——太空飞机大战(一))文章简单对游戏进行了说明,给出了部分配置文件以及子弹类。下面给出敌机类和方法。大家直到,飞机必须能非,最好能非直线飞行。因此必须有X_speed和Y_speed。飞机还要能发射子弹或导弹等,飞机有多少个发射位,多久发射一次,还有飞机被子弹击中或者敌机与英雄战机相撞等各种情况都是需要处理的。下面先给出敌机类和方法。class EnemyPlane(Sprite): def __init__(self, flightType, laye原创 2020-05-19 19:25:32 · 399 阅读 · 0 评论 -
Python游戏之Pygame——太空飞机大战(一)
学习Python,最好的办法是实战,实战!我们知道,有无数的先人和大侠提供了非常多的软件包供我们选用。有时候学习是一件很枯燥的事,玩游戏就不一样了。我们玩的最多的游戏是别人开发的,能不能开发出一款自己的游戏呢?当然大型游戏是不太现实的,用二三天事件写一个飞机大战的游戏还是有可能的。直接上效果图,由于自己一边玩一边抓图,可能抓不出最好的效果,先上两张吧。![在这里插入图片描述](https://img-blog.csdnimg.cn/20200519174555107.png?x-oss-process=原创 2020-05-19 18:57:51 · 1033 阅读 · 0 评论