【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

这篇具有很好参考价值的文章主要介绍了【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

导语

之前网络最火的梗,非“C徐坤打篮球”莫属。个人感觉,只有多年前的“春哥纯爷们”堪与匹敌!

虽然说C徐坤打篮球是一个老梗了,但是确实非常搞笑,今天就跟着小编一起来回忆一下吧!

“我是练习两年半的个人练习生—C徐坤,喜欢,唱、跳、RAP、 打篮球......”

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

那么,C徐坤为什么要打篮球?难道他比Y明还强?

这个梗最初来自于C徐坤参加《练习生》时的特长展示MV。不少人看过之后说了两个字:尴尬!

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

哈哈哈,好啦,话不多说,就带大家小小的回忆一小波,今天的主要内容还是就这个梗来给大

家写一款《练习时长两年半》的C徐坤打篮球的Pygame小游戏给大家,娱乐娱乐一下~

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

正文

C徐坤打篮球是什么梗?

C徐坤无疑是新一代顶级流量小生,因为人气太旺,或许是NBA看中了他的影响力,C徐坤担

当NBA的中国形象大使,和字母哥、利拉德以及汤普森拍摄了宣传片,宣传片中C徐坤大秀球

技,然而C徐坤将篮球打出了跳街舞的感觉,引发广大篮球迷的吐槽,之后C徐坤打篮球视频

被广泛传播,甚至有人用来做恶搞视频,让C徐坤直接火了一把。

一、环境准备中 

 1)运行环境 

环境安装:python 3.8: 解释器、pycharm: 代码编辑器,游戏模块Pygame需要安装的模块如下 

2)的模块安装方式安装即可。自带的一些模块 直接安装Python就可以使用了。

 相对应的安装包/安装教程/激活码/使用教程/学 习资料/工具插件 可以直接找我厚台获取 。 

 2)模块安装 

 第三方库的安装方式如下: 

 一般安装:pip install +模块名

 镜像源安装:pip install -i https://pypi.douban.com/simple/+模块名 

 (还有很多国内镜像源,这里是豆瓣的用习惯 了,其他镜像源可以去看下之前文章都有的) 

 模块安装问题可以详细的找我给大家讲一下的哈,之前其实也有的文章写了几个点的。

3)素材准备(可修改)

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

二、代码展示

主程序——

import pygame
from pygame.locals import *
from random import randint
from sys import exit

class Basketball(pygame.sprite.Sprite):
    def __init__(self,basket_surface,basket_position):
        pygame.sprite.Sprite.__init__(self)
        self.image = basket_surface
        self.rect = self.image.get_rect()
        self.rect.topleft = basket_position
        self.speed = 8

    def update(self):
        self.rect.top -= self.speed
        if(self.rect.top<-10):
            self.kill()

class Thanos(pygame.sprite.Sprite):
    def __init__(self,thanos_surface,thanos_position):
        pygame.sprite.Sprite.__init__(self)
        self.image = thanos_surface
        self.rect = self.image.get_rect()
        self.rect.topleft = thanos_position
        self.speed = 2
    def update(self):
        self.rect.top += self.speed
        if self.rect.top>SCREEN_HEIGHT:
            self.kill()
            global score
            score-=10
            global missed
            missed+=1


class CXK(pygame.sprite.Sprite):
    def __init__(self,cxk_surface,cxk_position):
        pygame.sprite.Sprite.__init__(self)
        self.image = cxk_surface
        self.rect = self.image.get_rect()
        self.rect.topleft = cxk_position
        self.speed = 5
        self.isJi = False
        self.bsks = pygame.sprite.Group()

    def move(self,offset):
        # 改变cxk的位置,并做边缘判断
        offset_x = offset[pygame.K_RIGHT] - offset[pygame.K_LEFT]
        offset_y = offset[pygame.K_DOWN] - offset[pygame.K_UP]
        # 横向边缘判断
        cxk_position_x = cxk.rect.left + offset_x
        if cxk_position_x < 0:
            cxk.rect.left = 0
        elif cxk_position_x > 400:
            cxk.rect.left = 400
        else:
            cxk.rect.left = cxk_position_x
        # 纵向边缘判断
        cxk_position_y = cxk.rect.top + offset_y
        if cxk_position_y < 150:
            cxk.rect.top = 150
        elif cxk_position_y > 700:
            cxk.rect.top = 700
        else:
            cxk.rect.top = cxk_position_y

    def singleShoot(self,bsk1_image):
        bsk1 = Basketball(bsk1_image,(self.rect.left+58,self.rect.top+45))#控制发射位置
        self.bsks.add(bsk1)




SCREEN_WIDTH = 600
SCREEN_HEIGHT = 900

offset={pygame.K_LEFT:0, pygame.K_RIGHT:0, pygame.K_UP:0, pygame.K_DOWN:0}

pygame.init()
pygame.mixer.init()
pygame.time.delay(1000)

clock = pygame.time.Clock()
screen =  pygame.display.set_mode([SCREEN_WIDTH,SCREEN_HEIGHT])
pygame.display.set_caption("两年半的练习生")#标题

ticks = 0
#载入背景
background=pygame.image.load('resources/images/bg.png')
#载入游戏结束画面
gameover = pygame.image.load('resources/images/gameover.png')
#载入主角cxk的图片并设置初始位置
cxk_image = pygame.image.load('resources/images/cxk.png')
cxk_position = [200,650]
#死亡时变鸡的图片及游戏结束倒计时
ji_image = pygame.image.load('resources/images/ji.png')
countdown = 0
#实例化主角cxk
cxk = CXK(cxk_image,cxk_position)
#载入篮球图片
bsk_image = pygame.image.load('resources/images/basket.png')
#载入敌人图片
thanos_image = pygame.image.load('resources/images/thanos.png')
thanos_group = pygame.sprite.Group()
thanos_down_group = pygame.sprite.Group()
#设置字体
score = 0
pygame.font.init()
score_font = pygame.font.SysFont(None,32)
score_font.set_bold(True)
#载入射击
ji_sound = pygame.mixer.Sound('resources/audios/ji.ogg')
si_sound = pygame.mixer.Sound('resources/audios/si.ogg')
#载入背景音乐
pygame.mixer.music.load('resources/audios/bgm.mp3')
pygame.mixer.music.play(-1)
#设置错过的灭霸数量
missed = 0
missed_font = pygame.font.SysFont(None,32)
missed_font.set_bold(True)

while True:


    #设置帧率
    clock.tick(90)
    #绑定背景图片
    screen.blit(background,(0,0))
    #设置分数面板
    ScoreFaceText = score_font.render("Score:"+str(score),True,(0,0,0))
    Scoretext = ScoreFaceText.get_rect()
    Scoretext.topleft = (10,10)
    screen.blit(ScoreFaceText,Scoretext)
    #设置miss面板
    MissedFaceText = missed_font.render("Missed:"+str(missed)+" (5 to die)",True,(0,0,0))
    Missedtext = MissedFaceText.get_rect()
    Missedtext.topleft = (10,40)
    screen.blit(MissedFaceText,Missedtext)
    #绑定人物图片
    if cxk.isJi :
        cxk.image = ji_image
        si_sound.play()
        countdown+=1
        if countdown == 40:
            pygame.mixer.music.stop()#结束游戏后停止背景音乐
            break#变成鸡后退出循环
    else:
        cxk.image = cxk_image
    #更新篮球图片
    cxk.bsks.update()
    cxk.bsks.draw(screen)
    #产生灭霸图片
    if ticks % 60 == 0:
        t = Thanos(thanos_image,[randint(0,SCREEN_WIDTH-thanos_image.get_width()),thanos_image.get_height()])
        thanos_group.add(t)
    #根据得分增加游戏难度
    if 200<=score<=400:
        t.speed = 3
    elif 400<score<=500:
        t.speed = 4
    elif 500<score<=1000:
        t.speed = 5
    elif score>1000:
        t.speed = 8
    thanos_group.update()
    thanos_group.draw(screen)
    #击毁并计分
    pre = len(thanos_down_group)
    thanos_down_group.add(pygame.sprite.groupcollide(thanos_group,cxk.bsks,True,True))
    if len(thanos_down_group)>pre:
        score+=10
    #坠鸡
    thanos_down_list = pygame.sprite.spritecollide(cxk,thanos_group,True)
    if len(thanos_down_list)>0:
        thanos_down_group.add(thanos_down_list)
        cxk.isJi = True
    #当missed大于5时,退出游戏
    if missed>=5:
        cxk.isJi = True
    screen.blit(cxk.image,cxk.rect)
    ticks+=1
    pygame.display.update()

    for event in pygame.event.get():
        #处理游戏退出
        if event.type == pygame.QUIT:
            pygame.quit()
            exit(0)
        #检测按键
        if event.type == pygame.KEYDOWN:
            if event.key in offset:
                offset[event.key] = cxk.speed
            elif event.key == pygame.K_a:
                cxk.singleShoot(bsk_image)
                ji_sound.play()
        elif event.type == pygame.KEYUP:
            if event.key in offset:
                offset[event.key] = 0

    cxk.move(offset)

#跳出前一段循环,进入游戏结束画面
screen.blit(gameover,(0,0))
pygame.mixer.music.load('resources/audios/dead.mp3')
pygame.mixer.music.play()
while True:
    pygame.display.update()
    #显示最后得分
    score_font = pygame.font.SysFont(None, 72)
    ScoreFaceText = score_font.render("Final Score:" + str(score), True, (0, 0, 0))
    Scoretext = ScoreFaceText.get_rect()
    Scoretext.topleft = (130, 140)
    screen.blit(ScoreFaceText, Scoretext)
    #退出界面
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            exit()

三、效果展示

1)游戏界面

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

2)坠鸡

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

3)游戏得分结束

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)

总结

好啦,今天的内容就先写到这里,如果代码由帮助到你,记得三连一下啦~

下期我们将更新更加精彩的内容哦~你们的支持是我更新的动力啦!

✨完整的素材源码等:可以滴滴我吖!或者点击文末hao自取免费拿的哈~

 🔨推荐往期文章——

项目1.0 童年游戏合集

【Python童年游戏】满满的回忆杀—那些年玩过的童年游戏你还记得吗?那个才是你的菜?看到第一个我就泪奔了(致我们逝去的青春)

项目1.8  Wifi破解免费

Python编程零基础如何逆袭成为爬虫实战高手之《WIFI破解》(甩万能钥匙十条街)爆赞爆赞~

项目1.9  浪漫樱花表白代码合集

项目1.0  图像处理系统1.0版本

【OpenCV+Tkinter项目】同学,你要的OpenCV图像处理小系统已安排,终于有人把OpenCV那些必备的知识点讲透彻了~(太厉害了,已跪)

项目1.1   扫雷

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

项目1.2   魂斗罗

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

🎄文章汇总——

汇总合集 Python—2022 |已有文章汇总 | 持续更新,直接看这篇就够了

(更多内容+源码都在✨文章汇总哦!!欢迎阅读喜欢的文章🎉~

【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)文章来源地址https://www.toymoban.com/news/detail-415292.html

到了这里,关于【Python搞笑游戏】因蔡徐坤打篮球动作超火,被某程序员写成了一款游戏,画面美到不敢看,成功学到了精髓~(附源码免费)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 257.【华为OD机试真题】幼儿园篮球游戏(贪心算法-Java&Python&C++&JS实现)

    🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(JavaPythonC++JS分别实现),详细代码讲解,助你深入学习,深度掌握!

    2024年02月19日
    浏览(52)
  • Python画蔡徐坤 附源码

             

    2024年02月13日
    浏览(36)
  • Lua语言实现游戏动作

    Lua是一种轻量级的脚本语言,它具有高效性、可扩展性和易学性等优点。在游戏开发领域,Lua语言得到了广泛应用。Lua语言可以用来实现游戏动作,包括角色行走、攻击、技能释放等。本文将详细介绍如何使用Lua语言实现游戏动作。 一、Lua语言介绍 Lua语言是一种轻量级的脚

    2023年04月14日
    浏览(42)
  • 使用python制作字符视频(蔡徐坤唱跳rap字符视频)

     我生成了一个蔡徐坤 唱、跳、RAP的字符视频,链接为: 蔡徐坤唱跳RAP字符视频 使用python将一个视频转换为字符视频 详细视频教程,总共8分钟。 用python制作字符视频详细教程(视频版) 文字教程见下文: 首先需要安装python 然后安装所需要的包:cv2、PIL 具体安装方法:

    2023年04月11日
    浏览(71)
  • 【XInput】游戏手柄模拟鼠标动作

    老周一般很少玩游戏,在某宝上买了一堆散件,计划在过年期间自己做个机械臂耍耍。头脑中划过一道紫蓝色的闪电,想起用游戏手柄来控制机械臂。机械臂是由树莓派(大草莓)负责控制,然后客户端通过 Socket UDP 来发送信号。优先考虑在 PC 和手机上测试,就顺便折腾一下

    2024年02月19日
    浏览(40)
  • DNF类游戏动作实现(C语言)

    没有接触制作小游戏前,感觉做游戏很不可思议,游戏里的人物是怎么移动的,怎么攻击,释放技能。。。。。。现在逐渐了解到之后,发现2d游戏人物的动作更多是图片的拼接,动作是否精细,由这个动作的帧数决定。这篇博客会简单实现2d人物的动作,效果如下。 2d人物动

    2024年02月04日
    浏览(47)
  • 横版动作闯关游戏:幽灵之歌 GHOST SONG 中文版

    在洛里安荒凉的卫星上,一件长期休眠的死亡服从沉睡中醒来。踏上发现自我、古老谜团和宇宙骇物的氛围2D冒险之旅。探索蜿蜒的洞穴,获得新的能力来揭开这个外星世界埋藏已久的秘密。 游戏特点 发现地下之物 探索这个广阔而美丽如画,充满密室和诡异历史的2D世界的扭

    2024年01月16日
    浏览(49)
  • 《勇士传说》横版卷轴动作类游戏笔记-2.素材导入和整理

    该笔记为M_Studio老师今年免费更新的面向初学者的教程的笔记,只会更新老师免费更新的部分,中文课堂独有的部分不会更新。教程中所有的演示均为付费版下的演示,观看免费版的小伙伴可能会出现和笔记不同的情况,欢迎提问。 课程介绍: https://www.bilibili.com/video/BV1zY41

    2024年02月14日
    浏览(39)
  • 低成本动作捕捉解决方案及虚幻VR网络游戏开发

    大家好,我叫人宅,很高兴和大家一起分享一下本套直播课程。 课程名称:元宇宙VR技术研发 低成本动作捕捉解决方案及虚幻VR网络游戏开发 主要介绍: 在过去我们做动画,需要具备动画师能力才可以去做,K了一天动画,差不多就几秒。如果是公司,需要招聘动画师,每位动

    2023年04月11日
    浏览(40)
  • 【unity】制作一个角色的初始状态(左右跳二段跳)【2D横板动作游戏】

            hi~ 大家好!欢迎大家来到我的全新unity学习记录系列。现在我想在2d横板游戏中,实现一个角色的初始状态-闲置状态、移动状态、空中状态。并且是利用 状态机 进行实现的。         本系列是跟着视频教程走的,所写也是作者个人的学习记录笔记。如有错误请联系

    2024年02月04日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包