城市直播房产教育博客汽车
快传网
汽车报价
买车新车
博客专栏
专题精品
教育留学
高考读书
房产家居
彩票视频
直播黑猫
投资微博
城市上海
政务旅游

一个Python摸鱼神器,好吃又好玩

11月27日 溷元楼投稿
  作者:小K
  来源:麦叔编程
  国庆过完之后上班有没有感觉好累?根本不想上班的节奏?
  作为摸鱼弟的小K,今天再次给大家带来了一个摸鱼神器,哦不,学习神器!
  这次推荐的是拥有29款高端游戏的Games库,在github上4。1k拥有stars的开源项目。
  链接我就不放了,怕被和谐掉,如果想看官方文档,在github上搜cpgames就能搜到。推荐原因
  还记得上次的摸鱼攻略给大家推荐的freegames库吗?
  摸鱼传送门Python摸鱼攻略【093】
  相比freegames库,这次Games给我们带来的简直就是大作。
  freegames库中的贪吃蛇:
  Games库中的贪吃蛇:
  虽说玩起来也差不多,但实际体验上Games的贪吃蛇有计分板和游戏BGM,体验还是有所提升的
  其中我最喜欢的大作:愤怒的小鸟
  直接把操作的物理引擎拉满,是我玩过最符合牛顿力学的Python游戏。游戏目录
  最大的推荐理由:安装方便,有Python环境就能用!
  使用攻略
  上文说了一大堆他的好,好像忘记如何教大家使用了。
  如果你的电脑上有安装Python环境,只需要两步就能进入游戏了。第一步安装pipinstallcpgames
  一条命令安装Games库,不作过多的解释。第二步运行脚本进入游戏
  github上的脚本不能让我自由地选择玩啥游戏,而是随机给我分配,这肯定会让我不爽的。importrandomfromcpgamesimportcpgamesgameclientcpgames。CPGames()allsupportsgameclient。getallsupported()gameclient。execute(random。choice(list(allsupports。values())))
  于是我在他的代码上进行了修改,改成了我想玩啥就选啥。
  修改后:importsysfromcpgamesimportcpgamesgameclientcpgames。CPGames()allsupportsgameclient。getallsupported()gamesdict(enumerate(list(allsupports。values()),start1))print(64)fori,elementingames。items():print(f游戏编号:{i}游戏名称:{element})print(64)try:gamecodeint(input(请输出游戏编号,回车后开始游戏:))ifgamecodelen(games):print(请重新运行脚本并输入正确的游戏编号)sys。exit()exceptExceptionase:print(请重新运行脚本并输入正确的游戏编号)sys。exit()gameclient。execute(games〔gamecode〕)
  运行脚本之后,会让你选择想玩的游戏,输入对应的游戏编号即可,pygame2。1。2(SDL2。0。18,Python3。9。9)Hellofromthepygamecommunity。https:www。pygame。orgcontribute。html游戏编号:1游戏名称:ski游戏编号:2游戏名称:maze。。。。。。游戏编号:28游戏名称:twozerofoureight游戏编号:29游戏名称:voicecontrolpikachu请输出游戏编号,回车后开始游戏:
  入门Python游戏开发
  如果你已经看到这,说明你对Python制作的游戏有一定的兴趣的。
  这个库对于想入门Python游戏开发或者其他语言的游戏开发来说,简直就是一个宝藏。
  29款游戏基本覆盖了很多主流游戏的基本逻辑。
  就像上文中我提到,那款愤怒的小鸟,物理引擎非常的棒,我也很好奇他是如何实现的。
  我就可以去查看他的源码是如何实现这个游戏的。
  令我没想到的是,这个愤怒的小鸟的代码量只有100行,抛开配置信息,游戏主逻辑只有50多行。Function:愤怒的小鸟importosimportpygamefrom。。。utilsimportQuitGamefrom。。baseimportPygameBaseGamefrom。modulesimportGameLevels,Pig,Bird,Block,Slingshot,Slab,Button,Label配置类classConfig():根目录rootdiros。path。split(os。path。abspath(file))〔0〕FPSFPS60屏幕大小SCREENSIZE(1800,700)标题TITLE愤怒的小鸟Charles的皮卡丘一些颜色定义BACKGROUNDCOLOR(51,51,51)背景音乐路径BGMPATHos。path。join(rootdir,resourcesaudiosbgm。ogg)游戏图片路径IMAGEPATHSDICT{pig:〔os。path。join(rootdir,resourcesimagespig1。png),os。path。join(rootdir,resourcesimagespig2。png),os。path。join(rootdir,resourcesimagespigdamaged。png),〕,bird:〔os。path。join(rootdir,resourcesimagesbird。png),〕,wall:〔os。path。join(rootdir,resourcesimageswallhorizontal。png),os。path。join(rootdir,resourcesimageswallvertical。png),〕,block:〔os。path。join(rootdir,resourcesimagesblock。png),os。path。join(rootdir,resourcesimagesblockdestroyed。png),〕}字体路径FONTPATHSDICTNOINIT{ComicKings:os。path。join(rootdir,resourcesfontsComicKings。ttf),arfmoochikncheez:os。path。join(rootdir,resourcesfontsarfmoochikncheez。ttf),}愤怒的小鸟classAngryBirdsGame(PygameBaseGame):gametypeangrybirdsdefinit(self,kwargs):self。cfgConfigsuper(AngryBirdsGame,self)。init(configself。cfg,kwargs)运行游戏defrun(self):初始化screen,resourceloader,cfgself。screen,self。resourceloader,self。cfg播放背景音乐resourceloader。playbgm()开始游戏defstartgame():gamelevelsGameLevels(cfg,resourceloader,screen)gamelevels。start()开始界面componentspygame。sprite。Group()titlelabelLabel(screen,700,100,400,200)titlelabel。addtext(ANGRYBIRDS,80,cfg。FONTPATHSDICTNOINIT〔arfmoochikncheez〕,(236,240,241))components。add(titlelabel)startbtnButton(screen,500,400,300,100,startgame,(244,208,63),(247,220,111))startbtn。addtext(STARTGAME,60,cfg。FONTPATHSDICTNOINIT〔arfmoochikncheez〕,cfg。BACKGROUNDCOLOR)components。add(startbtn)quitbtnButton(screen,1000,400,300,100,QuitGame,(241,148,138),(245,183,177))quitbtn。addtext(QUIT,60,cfg。FONTPATHSDICTNOINIT〔arfmoochikncheez〕,cfg。BACKGROUNDCOLOR)components。add(quitbtn)charleslabelLabel(screen,cfg。SCREENSIZE〔0〕300,cfg。SCREENSIZE〔1〕80,300,100)charleslabel。addtext(CHARLES,60,cfg。FONTPATHSDICTNOINIT〔arfmoochikncheez〕,(41,41,41))components。add(charleslabel)clockpygame。time。Clock()whileTrue:foreventinpygame。event。get():ifevent。typepygame。QUIT:QuitGame()elifevent。typepygame。KEYDOWN:ifevent。keypygame。Kq:QuitGame()elifevent。typepygame。MOUSEBUTTONDOWN:ifstartbtn。selected():startbtn。action()elifquitbtn。selected():quitbtn。action()screen。fill(cfg。BACKGROUNDCOLOR)forcomponentincomponents:component。draw()pygame。display。update()clock。tick(cfg。FPS)友情提示
  该库中的游戏基本上都有BGM,而且声音还不小。
  如果摸鱼使用,请关闭声音外放!!!!
投诉 评论 转载

中超山东泰山胜上海海港10月30日,山东泰山队球员在比赛中庆祝进球。新华社记者朱峥摄当日,在山东济南举行的2022赛季中国足球协会超级联赛第20轮比赛中,山东泰山队以3比1战胜上海海港队。……丧偶之痛离开的人永远都不会再回来而想念的心却迟迟不肯改变作者永失我爱的莉莉安图片源自网络如有侵权联系删除他朝若是同淋雪,此生也算共白头。白头若是雪可替,世间何来苦心人。化雪总比下雪冷,结束总比开始疼,故事的开……不会送走威少!他还说詹姆斯不可能再夺冠了洛杉矶赚钱洛杉矶花洛杉矶的男孩不回家管你们季后赛有多炸我在夜店开着我的趴派对里,一个两米一的浓眉大汉兴奋热舞,大秀说唱,嗨翻全场仔细一看,嚯……国庆假期,外出游玩必须提前做好三件事欢迎关注秀才教育在线文秀才今天是9月26日,距离国庆假期还有最后几天时间,对于计划外出旅游的同学,秀才提醒以下三件事必须提前考虑:一、乘坐公共交通须提前做好核……武汉60000亩稻海红了,快来打卡!最近的武汉街头,梧桐叶染上焦糖色,风吹栾树、摇落一地金黄,桂花香气似有若无。秋天真的来了。如果你的体感还不强烈,距武汉主城区1小时车程的江夏法泗镇,6万多亩齐整的稻田已然……强势美元掀起货币风暴日元年内贬值近17,欧元汇率跌至20年新本文来源:时代周报作者:周梦梅前摩根士丹利货币策略分析师StephenJen曾提出著名的美元微笑曲线:美元在经济不景气和繁荣时都会走强。如今,美元指数刷新20年新高,开启……一个Python摸鱼神器,好吃又好玩作者:小K来源:麦叔编程国庆过完之后上班有没有感觉好累?根本不想上班的节奏?作为摸鱼弟的小K,今天再次给大家带来了一个摸鱼神器,哦不,学习神器!这次推荐……大冰箱乔。卡特对2022年奥林匹亚先生前五名的预测乔。卡特是史上最成功的健美运动员之一,曾经4次获得奥林匹亚先生,在与祖师爷罗尼。库尔曼的艰苦竞争中,他可能比任何人都更深刻地明白,想要在最高级别的比赛中获胜需要什么。在最近的一……雅思赛场9次被黑,你应该知道的羽毛球规则黑洞10月23日,丹麦羽毛球公开赛迎来了决赛日,中国队在全部10个决赛席位中占据6席,成为毫无疑问的最大赢家混双、女单包括冠亚军,女双、男单也杀入了决赛。不过,对于绝大多数中国球迷……罕见!并蒂莲一开就是三株据华岩旅游区工作人员夏东介绍,今年,旅游区共开出了三株并蒂莲,其中最初盛开的并蒂莲已经变成莲蓬,且开始自然干枯。而另外两株,有一株已经是莲蓬状态,剩余一株依旧是莲花状态。……长春16岁少女因网恋跟家人吵架后离家出走,红旗街派出所民警星警察同志你们帮帮我,我女儿不见了,这大半夜的她能去哪啊?2022年9月15日23时,一名中年女子冲进长春市红旗街派出所嚎啕大哭,称其女儿年仅16岁,晚上和家人吵了几句就离家出走……隐入幽山的世外桃源新联村今年夏天大热影片《隐入尘烟》把我们带回了乡村带我们看到了祖国大西北不一样的风景影片中的甘肃农村黄沙弥漫,寂静荒凉然而在甘肃也有富庶的云……
宾利纯电动车提前问世?拥有独特的外观,百公里加速仅需1。5秒中大医院研发猴痘核酸检测试剂盒获欧盟CE认证辽宁男篮今日出征!老板刘景远返沈送行,宋凯出席郭艾伦被关心永劫无间宁红夜玩法与解析原神600收了个娱乐号,亏不亏?盘点足坛30位超级潜力新星,前五已是球队核心,两位身价过亿女排名将李国君运动生涯有遗憾,与丈夫跨国分居幸福吗?男篮世预赛总结后卫篇国庆畅游千年古县领略文化汤阴魅力华润万家38周年庆实力宠粉,啤酒饮料4840,会员满100送智造讲堂柔性产线系统的智能化调度排产格纹裙高级又养眼!喜欢的赶紧穿起来,让你变温柔
毛氏家族第三代中唯一的女性有一种爱叫陪伴作文600字凤梨花的养殖方法及注意事项人生最大的捷径就是读一流的书水滴互助轻松互助宣布关停入户抢劫被抓会不会重判杨洋!刘迦!罗一舟!我命运般的军艺!三星电子Nat。Commun。充放电过程中锂浓度梯度的演变和厨师切菜拿刀握姿是怎样的混油敏感肌用什么粉底液?敏感混油皮用的粉底液彝族餐具的分类墓王之王首播特效假,剧情套路,认真演攻墓守墓不好吗?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找江西南阳嘉兴昆明铜陵滨州广东西昌常德梅州兰州阳江运城金华广西萍乡大理重庆诸暨泉州安庆南充武汉辽宁