百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

「Pygame经典合集」??????终极白嫖大招:让你玩儿到爽

bigegpt 2024-10-12 05:25 7 浏览

导语


嘿!我是木木子,关注我——跟我一起玩游戏啦~


其实嘛?最近的话游戏的话实在是没什么可以写的了,很多游戏的话太难仿制起来很费时间,于是


就有了今天这篇小合集——?


??


哈哈哈,这是一个pygame的项目,内含4款单个游戏的哦!想玩哪款玩儿那款的哈......


今天是游戏合集 本文是由4个游戏组合而成的项目案例哈如下


Pygame小游戏合集:《坦克大战》、《推箱子》、《吃豆豆》、《FlappyBird》。


希望大家能喜欢:


我想为你们写更多更多更多好玩的游戏。


?



篇幅有限 更多的游戏源码项目记得文末找我领取的啦@全体成员!


正文


这几款游戏的话都是有单独的项目源码的——需要的文末找我领取即可啦!


一、四款游戏小介绍


1)坦克大战游戏


《坦克大战》当年算是红遍大江南北的热门游戏。


别看这游戏画面简陋,它可是集合了所有经典游戏的成功要素——


上手容易、升级强化、关卡丰富、可以双打,甚至还有良心到爆的编辑模式。虽然是个低K游戏,


但在当时的国人看来,这游戏买得非常值。


??


《坦克大战》的玩法很简单——在老家不被打爆的前提下,消灭所有敌人。游戏里的敌人多种多样、还有多变的地形,在当时营造出了丰富的玩法。


但这游戏最迷人的地方还不在此。因为加入了射击友军造成硬直的规则,加上可以打爆自家基地的


奇葩设定,使得《坦克大战》成为好友搅基的绝佳选择——你害我被杀了是吧,老子不干了,直接


拆老家……通常这游戏玩到最后,就成了“真人快打”。

?


?2)推箱子游戏


《推箱子》?以前读书的时候我可是玩通关了的,现在居然在这一关就被难住了!你还记得怎么玩


吗?能过几关?emmm,游戏玩法也不用介绍了,就是经典推箱子玩法,让箱子去指定位置就过


关,非常烧脑。感兴趣的小伙伴可以试试。


??


关键词:休闲、益智、闯关、经典推箱子、烧脑。 游戏平台:微信小游戏


氪金指数:0氪金。 推荐星数:3.5星 难度星数:5星


小编简评:《推箱子》是一款益智的推箱子游戏,复刻了经典玩法。



?3)吃豆豆小游戏


还记得曾经风靡一时的《吃豆豆》游戏么?它是红白机时代最受欢迎的超经典游戏。简单的游戏方法,充满未知数的游戏世界,是它的一大特色。


警告:吃豆豆可不是什么简单的游戏,它很容易上瘾,玩之前请做好浪费时间的准备哟~好在,它不会让你氪金【奸笑】


??


4)?FlappyBird小游戏


??2014年,《Flappy Bird》绝对算得上现象级游戏,是Google 2014年搜索量最高的游戏。


这款游戏不仅为其开发者阮哈东带来了巨大的收入,也让无数的玩家被“虐”得停不下来。


?


??


?二、合集代码演示


上面的四款游戏就不单独介绍了,每款游戏之前都写过文章的。我这里是组合放在这个新的合集项目里面的截图如下:


?



?1)代码演示组合


主要分为二部分源码:main.py、MyWindow.py。


组合代码:


# -*- coding: utf-8 -*-
#源码基地:#959755565#
#csdn账号:顾木子吖
#公众号:Python顾木子吖

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import pyqtSlot
from TankBattle import Game as TankBattleGame
from EatBeans import Game as EatBeansGame
from FlappyBird import Game as FlappyBirdGame
from Sokoban import Game as SokobanGame

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        font = QtGui.QFont()
        font.setFamily("arial")
        font.setPointSize(15)
        MainWindow.setFont(font)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.TankBattle = QtWidgets.QPushButton(self.centralwidget)
        self.TankBattle.setGeometry(QtCore.QRect(200, 120, 400, 50))
        self.TankBattle.setObjectName("TankBattle")
        self.EatBeans = QtWidgets.QPushButton(self.centralwidget)
        self.EatBeans.setGeometry(QtCore.QRect(200, 240, 400, 50))
        self.EatBeans.setObjectName("EatBeans")
        self.Sokoban = QtWidgets.QPushButton(self.centralwidget)
        self.Sokoban.setGeometry(QtCore.QRect(200, 180, 400, 50))
        self.Sokoban.setObjectName("Sokoban")
        self.FlappyBird = QtWidgets.QPushButton(self.centralwidget)
        self.FlappyBird.setGeometry(QtCore.QRect(200, 300, 400, 50))
        self.FlappyBird.setObjectName("FlappyBird")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(270, 50, 241, 30))
        self.label.setObjectName("label")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 36))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "PyGame小游戏合集"))
        self.TankBattle.setText(_translate("MainWindow", "坦克大战"))
        self.EatBeans.setText(_translate("MainWindow", "吃豆豆"))
        self.Sokoban.setText(_translate("MainWindow", "推箱子"))
        self.FlappyBird.setText(_translate("MainWindow", "FlappyBird"))
        self.label.setText(_translate("MainWindow", "PyGame小游戏合集"))
        self.TankBattle.clicked.connect(self.on_click1)
        self.Sokoban.clicked.connect(self.on_click2)
        self.EatBeans.clicked.connect(self.on_click3)
        self.FlappyBird.clicked.connect(self.on_click4)

    @pyqtSlot()
    def on_click1(self):
        TankBattleGame.main()

    @pyqtSlot()
    def on_click2(self):
        SokobanGame.main()

    @pyqtSlot()
    def on_click3(self):
        EatBeansGame.main(EatBeansGame.initialize())

    @pyqtSlot()
    def on_click4(self):
        FlappyBirdGame.main()



?主运行程序:


#源码基地:#959755565#
#csdn账号:顾木子吖
#公众号:Python顾木子吖
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
from MyWindow import *

class MyWindow(QMainWindow, Ui_MainWindow):
    def __init__(self, parent=None):
        super(MyWindow, self).__init__(parent)
        self.setupUi(self)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    myWin = MyWindow()
    myWin.show()
    sys.exit(app.exec())



?三、效果展示


视频效果展示——



【Pygame经典合集】??????终极白嫖大招让你玩儿到爽




截图效果展示——


?



?总结


这么多游戏在游戏合集里可以找到,还有很多经典游戏自己往下看文章汇总里面好多好玩儿

的游戏源码——感兴趣的小伙伴可以自己找我拿源码的体验一波啦~


需要完整的项目资料的免费找我领取:私信小编06即可啦~


往期推荐Pygame——


项目1.0 超级玛丽


程序员自制游戏:超级玛丽100%真实版,能把你玩哭了~【附源码】


项目1.1 扫雷


Pygame实战:据说这是史上最难扫雷游戏,没有之一,你们感受下......


项目1.2 魂斗罗


Pygame实战:多年后“魂斗罗”像素风归来 不止是经典与情怀@全体成员


项目1.3 太空机甲游戏


Pygame实战:牛,几千行代码实现《机甲闯关冒险游戏》,太牛了(保存起来慢慢学)


项目1.4 水果忍者


【Pygame实战】风靡全球的切水果游戏升级版“水果忍者”上线啦,你敢来PK嘛?


??

相关推荐

最全的MySQL总结,助你向阿里“开炮”(面试题+笔记+思维图)

前言作为一名编程人员,对MySQL一定不会陌生,尤其是互联网行业,对MySQL的使用是比较多的。对于求职者来说,MySQL又是面试中一定会问到的重点,很多人拥有大厂梦,却因为MySQL败下阵来。实际上...

Redis数据库从入门到精通(redis数据库设计)

目录一、常见的非关系型数据库NOSQL分类二、了解Redis三、Redis的单节点安装教程四、Redis的常用命令1、Help帮助命令2、SET命令3、过期命令4、查找键命令5、操作键命令6、GET命...

netcore 急速接入第三方登录,不看后悔

新年新气象,趁着新年的喜庆,肝了十来天,终于发了第一版,希望大家喜欢。如果有不喜欢看文字的童鞋,可以直接看下面的地址体验一下:https://oauthlogin.net/前言此次带来得这个小项目是...

精选 30 个 C++ 面试题(含解析)(c++面试题和答案汇总)

大家好,我是柠檬哥,专注编程知识分享。欢迎关注@程序员柠檬橙,编程路上不迷路,私信发送以下关键字获取编程资源:发送1024打包下载10个G编程资源学习资料发送001获取阿里大神LeetCode...

Oracle 12c系列(一)|多租户容器数据库

作者杨禹航出品沃趣技术Oracle12.1发布至今已有多年,但国内Oracle12C的用户并不多,随着12.2在去年的发布,选择安装Oracle12c的客户量明显增加,在接下来的几年中,Or...

flutter系列之:UI layout简介(flutter-ui-nice)

简介对于一个前端框架来说,除了各个组件之外,最重要的就是将这些组件进行连接的布局了。布局的英文名叫做layout,就是用来描述如何将组件进行摆放的一个约束。在flutter中,基本上所有的对象都是wi...

Flutter 分页功能表格控件(flutter 列表)

老孟导读:前2天有读者问到是否有带分页功能的表格控件,今天分页功能的表格控件详细解析来来。PaginatedDataTablePaginatedDataTable是一个带分页功能的DataTable,...

Flutter | 使用BottomNavigationBar快速构建底部导航

平时我们在使用app时经常会看到底部导航栏,而在flutter中它的实现也较为简单.需要用到的组件:BottomNavigationBar导航栏的主体BottomNavigationBarI...

Android中的数据库和本地存储在Flutter中是怎样实现的

如何使用SharedPreferences?在Android中,你可以使用SharedPreferencesAPI来存储少量的键值对。在Flutter中,使用Shared_Pref...

Flet,一个Flutter应用的实用Python库!

▼Flet:用Python轻松构建跨平台应用!在纷繁复杂的Python框架中,Flet宛如一缕清风,为开发者带来极致的跨平台应用开发体验。它用最简单的Python代码,帮你实现移动端、桌面端...

flutter系列之:做一个图像滤镜(flutter photo)

简介很多时候,我们需要一些特效功能,比如给图片做个滤镜什么的,如果是h5页面,那么我们可以很容易的通过css滤镜来实现这个功能。那么如果在flutter中,如果要实现这样的滤镜功能应该怎么处理呢?一起...

flutter软件开发笔记20-flutter web开发

flutterweb开发优势比较多,采用统一的语言,就能开发不同类型的软件,在web开发中,特别是后台式软件中,相比传统的html5开发,更高效,有点像c++编程的方式,把web设计出来了。一...

Flutter实战-请求封装(五)之设置抓包Proxy

用了两年的flutter,有了一些心得,不虚头巴脑,只求实战有用,以供学习或使用flutter的小伙伴参考,学习尚浅,如有不正确的地方还望各路大神指正,以免误人子弟,在此拜谢~(原创不易,转发请标注来...

为什么不在 Flutter 中使用全局变量来管理状态

我相信没有人用全局变量来管理Flutter应用程序的状态。毫无疑问,我们的Flutter应用程序需要状态管理包或Flutter的基本小部件(例如InheritedWidget或St...

Flutter 攻略(Dart基本数据类型,变量 整理 2)

代码运行从main方法开始voidmain(){print("hellodart");}变量与常量var声明变量未初始化变量为nullvarc;//未初始化print(c)...